@charset "UTF-8";

/* sass */
html { scroll-padding-top: 48px; }

.header .chg-border { display: none; }

.header .l-head-inner { position: relative; z-index: 10; left: 0; top: 0; width: 100%; padding-top: 48px; }

.header .wrap-fixed { background-color: #fff; position: fixed; height: 48px; top: 0; left: 0; width: 100%; }

.header .site-logo { width: 155px; padding-top: 12px; margin-left: 20px; }

.header .site-logo img { width: 100%; height: auto; }

.header .wrap-chg-lang { background-color: #1B9EAC; padding: 0 20px 30px; }

.header .chg-lang { border-top: 1px solid #fff; padding-top: 35px; display: flex; justify-content: center; }

.header .chg-lang > li { font-weight: 500; font-size: 1.4rem; line-height: 1.42; color: #fff; position: relative; }

.header .chg-lang > li:first-child { padding-left: 26px; }

.header .chg-lang > li:first-child::before { position: absolute; content: ""; display: inline-block; width: 15px; height: 17px; margin: auto 0; left: 0; top: 0; bottom: 0; background: transparent url(/shared/images/icon-earth-wh.svg) left top no-repeat; background-size: 15px auto; }

.header .chg-lang > li + li { margin-left: 0.6em; }

.header .chg-lang > li + li::before { content: ""; display: inline-block; width: 1px; height: 1.2em; background-color: #fff; vertical-align: -0.2em; margin-right: 0.6em; }

.header .chg-lang > li a { display: inline-block; padding-bottom: 3px; }

.header .chg-lang > li a:link, .header .chg-lang > li a:visited, .header .chg-lang > li a:hover, .header .chg-lang > li a:active { color: #fff; text-decoration: none; }

.header .chg-lang > li.jp a { border-bottom: 2px solid #fff; }

.jp .header .chg-lang > li.jp a { border-bottom: 2px solid #fff; }

.en .header .chg-lang > li.jp a { border-bottom: 2px solid transparent; }

.en .header .chg-lang > li.en a { border-bottom: 2px solid #fff; }

.header .area-spmenu { position: absolute; z-index: 1; top: 0; right: 0; width: 100%; }

.header .wrap-spmenu { position: absolute; width: 50px; height: 48px; overflow: hidden; top: 0; right: 0; }

.header .spmenu { display: block; width: 100%; height: 100%; white-space: nowrap; text-indent: 100%; background-color: #1B9EAC; }

.header .spmenu span { position: absolute; display: block; border-radius: 7px; height: 2px; background: #fff; left: 48%; margin: -2% 0 0 -20%; top: 50%; transition: background-color 0.3s ease-in-out; width: 48%; text-indent: 50px; }

.header .spmenu span::before, .header .spmenu span::after { background: #fff; border-radius: 7px; content: ""; display: block; height: 100%; left: 48%; margin-left: -50%; position: absolute; top: 50%; transform: rotate(0); transition: all 0.3s ease-in-out; width: 100%; }

.header .spmenu span::before { margin-top: -37%; }

.header .spmenu span::after { margin-top: 34%; }

.header .spmenu.accordionActive span { background: rgba(255, 255, 255, 0); width: 48%; }

.header .spmenu.accordionActive span::before, .header .spmenu.accordionActive span::after { margin: -6% 0 0 -54%; }

.header .spmenu.accordionActive span::before { transform: rotate(-45deg); }

.header .spmenu.accordionActive span::after { transform: rotate(45deg); }

.header .scroll { position: absolute; z-index: 10; left: 0; top: 48px; width: 100%; overflow-y: auto; max-height: calc(100vh - 48px); max-height: calc(100svh - 48px); overscroll-behavior-y: contain; display: none; }

.header .scroll.accordionActive { display: block; }

.header .scroll .gnav-main { background-color: #1B9EAC; }

.header .g-nav > li { position: relative; }

.header .g-nav > li .btn-acord { width: 100%; color: #fff; text-align: left; }

.header .g-nav > li > .txt-category a { display: block; }

.header .g-nav > li > .txt-category a:link, .header .g-nav > li > .txt-category a:visited, .header .g-nav > li > .txt-category a:hover, .header .g-nav > li > .txt-category a:active { color: #fff; text-decoration: none; }

.header .g-nav > li .btn-acord { display: block; font-weight: bold; font-size: 1.6rem; line-height: 1.5; padding: 16px 0 16px 20px; position: relative; }

.header .g-nav > li .btn-acord::before, .header .g-nav > li .btn-acord::after { background-color: #fff; }

.header .g-nav > li .btn-acord::before { position: absolute; content: ""; display: inline-block; width: 12px; height: 2px; margin: auto 0; top: 0; bottom: 0; right: 21px; }

.header .g-nav > li .btn-acord::after { position: absolute; content: ""; display: inline-block; width: 2px; height: 12px; margin: auto 0; top: 0; bottom: 0; right: 26px; }

.header .g-nav > li .btn-acord.accordionActive::after { display: none; }

.header .g-nav > li > .txt-category a { display: block; font-weight: bold; font-size: 1.6rem; line-height: 1.5; padding: 16px 0 16px 20px; background: transparent url(/shared/images/icon-arw-wh-s.svg) right 18px center no-repeat; background-size: 18px 18px; }

.header .g-nav > li:last-child .layer2.accordionActive { margin-bottom: -1px; }

.header .g-nav .layer2 { background-color: #fff; margin-left: 20px; display: none; }

.header .g-nav .layer2.accordionActive { display: block; }

.header .g-nav .layer2 > li { color: #1B9EAC; position: relative; }

.header .g-nav .layer2 > li .txt-category { font-weight: bold; padding: 16px 0 0 27px; font-size: 1.6rem; line-height: 1.5; }

.header .g-nav .layer2 > li .txt-category:has(a) { padding: 0; }

.header .g-nav .layer2 > li .txt-category a { display: block; padding: 20px 38px 12px 27px; background: transparent url(/shared/images/icon-arw-em-s.svg) right 20px center no-repeat; background-size: 18px 18px; position: relative; }

.header .g-nav .layer2 > li .txt-category a:link, .header .g-nav .layer2 > li .txt-category a:visited, .header .g-nav .layer2 > li .txt-category a:hover, .header .g-nav .layer2 > li .txt-category a:active { color: #1B9EAC; text-decoration: none; }

.header .g-nav .layer2 > li .txt-category .posiline { display: inline-block; padding-bottom: 6px; border-bottom: 2px solid transparent; }

.header .g-nav .layer2 > li .txt-layer { font-weight: bold; padding: 16px 0 16px 27px; font-size: 1.6rem; line-height: 1.5; }

.header .g-nav .layer2 > li .txt-layer:has(+ .layer3) { padding-bottom: 3px; }

.header .g-nav .layer2 > li .txt-layer a { position: relative; padding-left: 1em; }

.header .g-nav .layer2 > li .txt-layer a:link, .header .g-nav .layer2 > li .txt-layer a:visited, .header .g-nav .layer2 > li .txt-layer a:hover, .header .g-nav .layer2 > li .txt-layer a:active { color: #1B9EAC; text-decoration: none; }

.header .g-nav .layer2 > li .txt-layer a::before { position: absolute; content: ""; display: inline-block; width: 8px; height: 15px; left: 0; margin-top: 0.75em; top: -6px; background-color: #1B9EAC; clip-path: polygon(0 4.6%, 25.9168% 0, 100% 50%, 25.9168% 100%, 0% 95.3%, 67.7261% 50%); }

.header .g-nav .layer2 > li:nth-last-child(n+2)::after { content: ""; position: absolute; display: block; height: 1px; background-color: rgba(27, 158, 172, 0.3); bottom: 0; left: 27px; right: 20px; }

.header .g-nav .layer3 { margin-left: 27px; padding-bottom: 8px; }

.header .g-nav .layer3 > li { color: #1B9EAC; font-size: 1.4rem; line-height: 2; margin-left: 16px; }

.header .g-nav .layer3 > li a:link, .header .g-nav .layer3 > li a:visited, .header .g-nav .layer3 > li a:hover, .header .g-nav .layer3 > li a:active { color: #1B9EAC; text-decoration: none; }

.header .wrap-close { background: #036274; font-size: 1.4rem; line-height: 1.42; font-weight: 500; }

.header .wrap-close .spmenu-close { display: block; text-align: center; width: 100%; color: #fff; padding: 17px 0 18px; }

.header .area-consultation { position: absolute; z-index: 1; top: 0; right: 0; width: 100%; }

.header .area-consultation .btn-mail-icon { position: absolute; display: block; width: 50px; height: 48px; top: 0; right: 63px; white-space: nowrap; overflow: hidden; text-indent: 100%; background-color: #fff; transition: background-color 0.3s ease-in-out; }

.header .area-consultation .btn-mail-icon::before { position: absolute; content: ""; display: inline-block; width: 100%; height: 100%; top: 0; left: 0; background: transparent url(/shared/images/icon-mail-em.svg) center center no-repeat; background-size: 27px auto; }

.header .area-consultation .btn-mail-icon span { position: absolute; height: 2px; left: 48%; margin: -2% 0 0 -20%; top: 50%; width: 48%; text-indent: 50px; }

.header .area-consultation .btn-mail-icon span::before, .header .area-consultation .btn-mail-icon span::after { background: #fff; border-radius: 7px; content: ""; display: block; height: 100%; left: 48%; margin-left: -50%; position: absolute; top: 50%; transform: rotate(0); transition: all 0.3s ease-in-out; width: 100%; opacity: 0; }

.header .area-consultation .btn-mail-icon span::before { margin-top: -37%; }

.header .area-consultation .btn-mail-icon span::after { margin-top: 34%; }

.header .area-consultation .btn-mail-icon.accordionActive { background-color: #1B9EAC; }

.header .area-consultation .btn-mail-icon.accordionActive span { display: block; background: rgba(255, 255, 255, 0); width: 48%; }

.header .area-consultation .btn-mail-icon.accordionActive span::before, .header .area-consultation .btn-mail-icon.accordionActive span::after { margin: -6% 0 0 -54%; opacity: 1; }

.header .area-consultation .btn-mail-icon.accordionActive span::before { transform: rotate(-45deg); }

.header .area-consultation .btn-mail-icon.accordionActive span::after { transform: rotate(45deg); }

.header .area-consultation .wrap-consultation { position: absolute; display: none; top: 57px; left: 20px; right: 20px; padding-top: 15px; }

.header .area-consultation .wrap-consultation.accordionActive { display: block; }

.header .area-consultation .wrap-consultation .inner-consultation { box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }

.header .area-consultation .wrap-consultation dt { padding: 30px 24px 0; background-color: #fff; font-weight: bold; font-size: 2.4rem; line-height: 1.45; text-align: center; color: #000; }

.header .area-consultation .wrap-consultation dd { background-color: #fff; padding: 24px 24px 40px; }

.header .area-consultation .wrap-consultation dd .arrow { position: absolute; z-index: -1; display: block; top: 0px; right: 62px; filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16)); }

.header .area-consultation .wrap-consultation dd .arrow::before { display: inline-block; content: ""; width: 10px; height: 14px; background-color: #fff; clip-path: polygon(0% 100%, 50% 0%, 100% 100%); }

.header .area-consultation .wrap-consultation dd .txt-detail { font-weight: 500; font-size: 1.6rem; line-height: 1.75; text-align: center; color: #000; }

.header .area-consultation .wrap-consultation dd .wrap-link { margin-top: 24px; }

.header .area-consultation .wrap-consultation dd .txt-link { font-size: 1.8rem; line-height: 1.22; font-weight: bold; }

.header .area-consultation .wrap-consultation dd .txt-link a { min-height: 64px; display: flex; align-items: center; justify-content: center; border-radius: 32px; background-color: #1B9EAC; position: relative; }

.header .area-consultation .wrap-consultation dd .txt-link a:link, .header .area-consultation .wrap-consultation dd .txt-link a:visited, .header .area-consultation .wrap-consultation dd .txt-link a:hover, .header .area-consultation .wrap-consultation dd .txt-link a:active { color: #fff; text-decoration: none; }

.header .area-consultation .wrap-consultation dd .txt-link a .text { display: inline-block; padding-left: 48px; position: relative; }

.header .area-consultation .wrap-consultation dd .txt-link a.icon-mail .text::before { position: absolute; content: ""; display: inline-block; width: 40px; height: 40px; margin: auto 0; top: 0; bottom: 0; left: 0; background: transparent url(/shared/images/icon-mail-parts-wh.svg) 0 0 no-repeat; background-size: 40px 40px; }

.header .area-consultation .wrap-consultation dd .txt-link a.icon-tel .text::before { position: absolute; content: ""; display: inline-block; width: 40px; height: 40px; margin: auto 0; top: 0; bottom: 0; left: 0; background: transparent url(/shared/images/icon-tel-parts-wh.svg) 0 0 no-repeat; background-size: 40px 40px; }

.header .area-consultation .wrap-consultation dd .txt-dt { margin-top: 8px; font-size: 1.4rem; text-align: center; color: #000; }

.service .header .g-nav li.service .layer2 > li .txt-category .posiline, .company .header .g-nav li.company .layer2 > li .txt-category .posiline, .sustainability .header .g-nav li.sustainability .layer2 > li .txt-category .posiline, .recruit .header .g-nav li.recruit .layer2 > li .txt-category .posiline { border-bottom-color: #1B9EAC; }

.lnk-pagetop { position: fixed; z-index: 9; right: 16px; bottom: 100px; }

.lnk-pagetop > li { font-size: 0.8rem; line-height: 1.1; font-weight: 500; }

.lnk-pagetop > li a { display: block; padding: 19px 5px 0; width: 48px; height: 48px; border-radius: 50%; background: #1B9EAC url(/shared/images/icon-arw-u.svg) center 8px no-repeat; background-size: 9px 7px; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); text-align: center; }

.lnk-pagetop > li a:link, .lnk-pagetop > li a:visited, .lnk-pagetop > li a:hover, .lnk-pagetop > li a:active { color: #fff; text-decoration: none; }

.recruit .lnk-pagetop { position: fixed; z-index: 9; right: 16px; bottom: 50px; }

.footer .l-foot-inner { background-color: #262626; padding: 40px 0 104px; }

.footer .footer-logo { margin-left: 20px; }

.footer .footer-logo img { width: 280px; height: auto; }

.footer .lnk-footer-link { margin-top: 40px; }

.footer .lnk-footer-link > li { font-size: 1.8rem; line-height: 2.2; color: #fff; position: relative; }

.footer .lnk-footer-link > li::after { content: ""; position: absolute; bottom: 0; left: 20px; right: 20px; height: 1px; background-color: rgba(38, 38, 38, 0.6); }

.footer .lnk-footer-link > li .btn-acord { display: block; width: 100%; height: 74px; position: relative; padding: 0 20px; text-align: left; color: #fff; }

.footer .lnk-footer-link > li .btn-acord::before, .footer .lnk-footer-link > li .btn-acord::after { content: ""; display: inline-block; background-color: #fff; position: absolute; margin: auto 0; top: 0; bottom: 0; }

.footer .lnk-footer-link > li .btn-acord::before { width: 12px; height: 2px; right: 20px; }

.footer .lnk-footer-link > li .btn-acord::after { width: 2px; height: 12px; right: 25px; }

.footer .lnk-footer-link > li .btn-acord.accordionActive::after { display: none; }

.footer .lnk-footer-link > li .txt-category { display: none; }

.footer .lnk-footer-link > li a:link, .footer .lnk-footer-link > li a:visited, .footer .lnk-footer-link > li a:hover, .footer .lnk-footer-link > li a:active { color: #fff; text-decoration: none; }

.footer .layer2 { display: none; margin: 0 20px; }

.footer .layer2.accordionActive { display: block; }

.footer .layer2 > li { padding-bottom: 22px; font-size: 1.4rem; line-height: 1.5; color: rgba(255, 255, 255, 0.6); position: relative; padding-left: 8px; }

.footer .layer2 > li::before { position: absolute; content: ""; display: inline-block; width: 5px; height: 1px; left: 0; background-color: rgba(255, 255, 255, 0.6); top: 0.75em; }

.footer .layer2 > li a { display: inline-block; }

.footer .layer2 > li a:link, .footer .layer2 > li a:visited, .footer .layer2 > li a:hover, .footer .layer2 > li a:active { color: inherit; text-decoration: none; }

.footer .footer-policy { margin: 0 20px; }

.footer .footer-policy .lnk-policy { margin-top: 40px; display: flex; }

.footer .footer-policy .lnk-policy > li { font-size: 1.6rem; line-height: 2; color: rgba(255, 255, 255, 0.6); }

.footer .footer-policy .lnk-policy > li a:link, .footer .footer-policy .lnk-policy > li a:visited, .footer .footer-policy .lnk-policy > li a:hover, .footer .footer-policy .lnk-policy > li a:active { color: inherit; text-decoration: none; }

.footer .footer-policy .lnk-policy > li + li { margin-left: 16px; }

.footer .footer-policy .lnk-policy > li + li::before { content: ""; display: inline-block; width: 1px; height: 20px; vertical-align: -0.2em; margin-right: 16px; background-color: rgba(255, 255, 255, 0.6); }

.footer .footer-policy .copyright { margin-top: 24px; font-size: 1.4rem; line-height: 2.28; letter-spacing: 0.04em; text-align: right; color: #fff; }

.recruit .footer .l-foot-inner { padding-bottom: 24px; }

@media print, all and (min-width: 768px) { html { scroll-padding-top: 100px; } .header .l-head-inner { padding-top: 100px; width: auto; }
  .header .wrap-fixed { height: 100px; min-width: 1200px; }
  .header .l-head-main { max-width: 1260px; position: relative; margin: 0 auto; padding-left: 40px; padding-right: 40px; }
  .header .site-logo { width: 230px; padding-top: 33px; margin-left: 0; position: relative; z-index: 11; }
  .header .wrap-chg-lang { background-color: transparent; padding: 0; position: absolute; top: 0; right: 225px; margin: 40px 0 0; bottom: 0; }
  .header .chg-lang { padding-top: 0; border-top-style: none; }
  .header .chg-lang > li { font-weight: bold; color: #1B9EAC; }
  .header .chg-lang > li:first-child::before { background-image: url(/shared/images/icon-earth-em.svg); background-size: 15px auto; margin: 0; top: 2px; }
  .header .chg-lang > li + li::before { background-color: #1B9EAC; }
  .header .chg-lang > li a { padding-bottom: 14px; }
  .header .chg-lang > li a:link, .header .chg-lang > li a:visited, .header .chg-lang > li a:hover, .header .chg-lang > li a:active { color: #1B9EAC; text-decoration: none; }
  .header .chg-lang > li.jp a { border-color: #1B9EAC; }
  .jp .header .chg-lang > li.jp a { border-color: #1B9EAC; }
  .en .header .chg-lang > li.jp a { border-color: #1B9EAC; }
  .en .header .chg-lang > li.en a { border-color: #1B9EAC; }
  .en .header .chg-lang > li.jp a { border-style: none; }
  .header .wrap-spmenu { display: none; }
  .header .scroll { position: absolute; z-index: 10; top: 0; overflow-y: visible; max-height: none; overscroll-behavior-y: auto; display: block; }
  .header .scroll .wrap-gnav { padding-bottom: 0; position: relative; width: 100%; margin: 0 auto; }
  .header .scroll .gnav-main { background-color: transparent; position: relative; margin-left: 40px; margin-right: 40px; }
  .header .g-nav { display: flex; margin-left: 258px; height: 100px; }
  .header .g-nav > li { margin-top: 37px; padding: 0 12px; position: static; }
  .header .g-nav > li .btn-acord { width: auto; color: #1B9EAC; padding: 0; }
  .header .g-nav > li .btn-acord::before { display: none; }
  .header .g-nav > li .btn-acord::after { display: none; width: 100%; height: 2px; margin: 0; top: auto; right: 0; bottom: 0; background-color: #1B9EAC; }
  .header .g-nav > li .btn-acord a { display: block; padding-bottom: 15px; text-decoration: none; }
  .header .g-nav > li > .txt-category a { display: block; }
  .header .g-nav > li > .txt-category a:link, .header .g-nav > li > .txt-category a:visited, .header .g-nav > li > .txt-category a:hover, .header .g-nav > li > .txt-category a:active { color: #1B9EAC; text-decoration: none; }
  .header .g-nav > li:hover .btn-acord::after { display: block; }
  .header .g-nav > li:hover .wrap-layer2 { display: block; }
  .header .g-nav > li > .txt-category a { display: block; font-weight: bold; font-size: 1.6rem; line-height: 1.5; padding: 16px 0 16px 20px; background: transparent url(/shared/images/icon-arw-wh-s.svg) right 18px center no-repeat; background-size: 18px 18px; }
  .header .g-nav > li:last-child .layer2.accordionActive { margin-bottom: 0; }
  .header .g-nav .wrap-layer2 { position: absolute; left: 0; top: 100px; width: 100%; padding-top: 28px; display: none; }
  .header .g-nav .wrap-layer2::before { content: ""; position: absolute; width: 15px; height: 20px; background-color: #fff; clip-path: polygon(0% 100%, 50% 0%, 100% 100%); display: inline-block; top: 8px; }
  .header .g-nav > li.service .wrap-layer2::before { left: 315px; }
  .header .g-nav > li.company .wrap-layer2::before { left: 419px; }
  .header .g-nav > li.sustainability .wrap-layer2::before { left: 548px; }
  .header .g-nav > li.recruit .wrap-layer2::before { left: 676px; }
  .header .g-nav .layer2 { display: grid; column-gap: 32px; justify-content: start; grid-template-rows: 1fr; margin-left: 0; box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.16); padding: 47px 20px 44px 40px; }
  .header .g-nav .layer2.accordionActive { display: grid; }
  .header .g-nav .layer2 > li { margin-top: 8px; }
  .header .g-nav .layer2 > li:first-child { grid-column: 1 / -1; margin-top: 0; margin-bottom: 35px; }
  .header .g-nav .layer2 > li:first-child .txt-category .posiline { padding-bottom: 0; }
  .header .g-nav .layer2 > li .txt-category { padding: 0 0 0 27px; font-size: 2rem; line-height: 2.4; }
  .header .g-nav .layer2 > li .txt-category a { display: inline-block; padding: 0 54px 0 0; background-size: 32px 32px; background-position: right center; }
  .header .g-nav .layer2 > li .txt-category a:link, .header .g-nav .layer2 > li .txt-category a:visited, .header .g-nav .layer2 > li .txt-category a:hover, .header .g-nav .layer2 > li .txt-category a:active { color: #1B9EAC; text-decoration: none; }
  .header .g-nav .layer2 > li .txt-layer { font-weight: bold; padding: 0; font-size: 1.8rem; line-height: 1.45; }
  .header .g-nav .layer2 > li .txt-layer:has(+ .layer3) { padding-bottom: 0; }
  .header .g-nav .layer2 > li .txt-layer a { padding-left: 16px; }
  .header .g-nav .layer2 > li .txt-layer a::before { position: absolute; content: ""; display: inline-block; width: 7px; height: 18px; left: 0; top: 0.725em; margin-top: -8px; background-color: #1B9EAC; clip-path: polygon(0 4.6%, 25.9168% 0, 100% 50%, 25.9168% 100%, 0% 95.3%, 67.7261% 50%); }
  .header .g-nav .layer2 > li:nth-last-child(n+2)::after { display: none; }
  .header .g-nav .service .layer2 { grid-template-columns: repeat(auto-fit, minmax(9em, auto)); }
  .header .g-nav .company .layer2 { grid-template-columns: repeat(auto-fit, minmax(9em, auto)); }
  .header .g-nav .sustainability .layer2 { grid-template-columns: repeat(auto-fit, minmax(12em, auto)); }
  .header .g-nav .recruit .layer2 { grid-template-columns: repeat(auto-fit, minmax(9em, auto)); }
  .header .g-nav .layer3 { margin-left: 0; padding-bottom: 0; }
  .header .g-nav .layer3 > li { font-size: 1.6rem; margin-top: 5px; margin-left: 20px; }
  .header .wrap-close { display: none; }
  .header .area-consultation { width: 740px; margin-left: auto; }
  .header .area-consultation .l-consultation { position: absolute; width: fit-content; height: 72px; margin-left: auto; margin-top: 28px; right: 40px; }
  .header .area-consultation .wrap-consultation.accordionActive { display: none; }
  .header .area-consultation:hover .btn-mail-icon { color: #fff; background-color: #1B9EAC; }
  .header .area-consultation:hover .btn-mail-icon::before { filter: sepia(100%) brightness(300%) saturate(0%); }
  .header .area-consultation:hover .wrap-consultation { display: block; }
  .header .area-consultation .btn-mail-icon { position: relative; display: block; width: auto; height: auto; margin-left: auto; right: 0; text-indent: 0; border: 2px solid #1B9EAC; border-radius: 8px; font-weight: 500; font-size: 1.6rem; text-align: left; color: #1B9EAC; padding: 10px 12px 10px 54px; pointer-events: none; transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out; }
  .header .area-consultation .btn-mail-icon::before { width: 28px; left: 14px; transition: filter 0.3s ease-in-out; }
  .header .area-consultation .btn-mail-icon span { position: static; width: auto; height: auto; margin: 0; text-indent: none; transition: none; }
  .header .area-consultation .btn-mail-icon span::before, .header .area-consultation .btn-mail-icon span::after { display: none; }
  .header .area-consultation .wrap-consultation { left: auto; right: 0; width: 740px; top: 72px; padding-top: 28px; }
  .header .area-consultation .wrap-consultation dt { padding: 30px 24px 0; }
  .header .area-consultation .wrap-consultation dd { padding: 8px 60px 48px; }
  .header .area-consultation .wrap-consultation dd .arrow { top: 8px; right: 108px; }
  .header .area-consultation .wrap-consultation dd .arrow::before { width: 15px; height: 20px; }
  .header .area-consultation .wrap-consultation dd .txt-detail { font-weight: normal; line-height: 1.5; }
  .header .area-consultation .wrap-consultation dd .wrap-btn { margin-top: 32px; display: flex; justify-content: space-between; }
  .header .area-consultation .wrap-consultation dd .wrap-link { margin-top: 0; width: 288px; }
  .header .area-consultation .wrap-consultation dd .txt-link { font-size: 1.8rem; line-height: 1.5; }
  .header .area-consultation .wrap-consultation dd .txt-link a { min-height: 72px; border-radius: 48px; }
  .header .area-consultation .wrap-consultation dd .txt-link a .text { padding-left: 40px; }
  .header .area-consultation .wrap-consultation dd .txt-link a.icon-mail .text::before { width: 32px; height: 32px; background: transparent url(/shared/images/icon-mail-parts-wh.svg) 0 0 no-repeat; background-size: 32px 32px; }
  .header .area-consultation .wrap-consultation dd .txt-link a.icon-tel { font-size: 2rem; line-height: 2; }
  .header .area-consultation .wrap-consultation dd .txt-link a.icon-tel .text::before { width: 32px; height: 32px; background: transparent url(/shared/images/icon-tel-parts-wh.svg) 0 0 no-repeat; background-size: 32px 32px; }
  .header .area-consultation .wrap-consultation dd .txt-dt { margin-top: 16px; font-size: 1.4rem; } .sitetop .header .chg-border { width: 100%; display: block; position: absolute; top: 700px; left: 0; }
  .sitetop .header .l-head-inner { padding-top: 0; }
  .sitetop .header .wrap-fixed { transition: background-color 0.5s ease; }
  .sitetop .header .g-nav > li .btn-acord, .sitetop .header .chg-lang > li, .sitetop .header .chg-lang > li a { transition: color 0.5s ease, border-color 0.5s ease; }
  .sitetop .header .g-nav > li .btn-acord::after { transition: background-color 0.5s ease; }
  .sitetop .header .chg-lang > li a::after { transition: border-color 0.5s ease; }
  .sitetop .header .chg-lang > li:first-child::before, .sitetop .header .site-logo img { transition: filter 0.5s ease; }
  .sitetop .header .chg-lang > li + li::before { transition: background-color 0.5s ease; }
  .sitetop.transparent-header .wrap-fixed { background-color: rgba(255, 255, 255, 0); }
  .sitetop.transparent-header .wrap-fixed .g-nav > li .btn-acord a { color: #fff; }
  .sitetop.transparent-header .wrap-fixed .g-nav > li:hover .btn-acord::after { background-color: #fff; }
  .sitetop.transparent-header .wrap-fixed .chg-lang > li, .sitetop.transparent-header .wrap-fixed .chg-lang > li a { color: #fff; }
  .sitetop.transparent-header .wrap-fixed .chg-lang > li a { border-color: #fff; }
  .sitetop.transparent-header .wrap-fixed .chg-lang > li + li::before { background-color: #fff; }
  .sitetop.transparent-header .wrap-fixed .chg-lang > li:first-child::before, .sitetop.transparent-header .wrap-fixed .site-logo img { filter: sepia(100%) brightness(300%) saturate(0%); } .header .g-nav .layer2 > li a { border-bottom: 1px solid transparent; }
  .header .g-nav .layer2 > li a:hover { border-bottom-color: #1B9EAC; }
  .service .header .g-nav li.service .layer2 > li .txt-category .posiline, .company .header .g-nav li.company .layer2 > li .txt-category .posiline, .sustainability .header .g-nav li.sustainability .layer2 > li .txt-category .posiline, .recruit .header .g-nav li.recruit .layer2 > li .txt-category .posiline { border-bottom-style: none; }
  .service .header .g-nav > li.service .btn-acord::after, .company .header .g-nav > li.company .btn-acord::after, .sustainability .header .g-nav > li.sustainability .btn-acord::after, .recruit .header .g-nav > li.recruit .btn-acord::after { display: block; } .lnk-pagetop { bottom: 50px; right: 24px; }
  .lnk-pagetop > li { font-size: 1.4rem; line-height: 1.2; }
  .lnk-pagetop > li a { padding: 28px 10px 0; width: 80px; height: 80px; background: #1B9EAC url(/shared/images/icon-arw-u.svg) center 8px no-repeat; background-size: 12px 15px; transition: opacity 0.5s ease; }
  .lnk-pagetop > li a:hover { opacity: 0.5; } .footer .l-foot-inner { padding-top: 160px; padding-bottom: 24px; min-width: 1200px; }
  .footer .l-foot-main { min-width: 1200px; max-width: 1260px; margin: 0 auto; padding-left: 40px; padding-right: 40px; }
  .footer .footer-gnav::after { content: ""; display: block; clear: both; }
  .footer .footer-logo { float: right; margin-left: 0; width: 370px; }
  .footer .footer-logo img { width: 100%; }
  .footer .lnk-footer-link { float: left; width: calc(100% - 370px); display: flex; justify-content: space-between; margin-top: 0; }
  .footer .lnk-footer-link > li::after { display: none; }
  .footer .lnk-footer-link > li.service { width: 194px; }
  .footer .lnk-footer-link > li.company { width: 175px; }
  .footer .lnk-footer-link > li.sustainability { width: 254px; }
  .footer .lnk-footer-link > li.recruit { width: 187px; }
  .footer .lnk-footer-link > li .btn-acord { display: none; }
  .footer .lnk-footer-link > li .txt-category { display: block; font-size: 2rem; line-height: 1.45; }
  .footer .layer2 { display: block; margin: 26px 0 0 0; }
  .footer .layer2 > li { font-size: 1.6rem; margin-top: 16px; padding-bottom: 0; }
  .footer .footer-policy { display: flex; justify-content: space-between; margin-top: 50px; margin-left: 0; padding-top: 40px; border-top: 1px solid rgba(255, 255, 255, 0.6); }
  .footer .footer-policy .lnk-policy { margin-top: 0; }
  .footer .footer-policy .copyright { margin-top: 0; font-size: 1.6rem; line-height: 2; } }
