/*!*******************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!./cms/wp-content/themes/kitz/scss/style.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*!
Coding style from FLOCSS
https://github.com/hiloki/flocss
 */
/* 汎用スタイル */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-style: normal;
  font-weight: 500;
  vertical-align: baseline;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

ul, ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
}

picture {
  font-size: 0;
}

sub, sup {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 50%;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

* {
  box-sizing: border-box;
  word-wrap: break-word;
  word-break: break-all;
}

html {
  font-size: 10px;
}

body {
  font-family: 'Noto Sans JP', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 500;
  -webkit-text-size-adjust: 100%;
  color: #333;
  line-height: 1.5;
}

a {
  color: #333;
  text-decoration: none;
  outline: none;
  transition: opacity .3s;
}

@media print, screen and (min-width: 768px) {
  a[href^="tel:"] {
    cursor: default;
    pointer-events: none;
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

input, textarea, button, select {
  font: inherit;
}

button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  cursor: pointer;
  outline: none;
}

label {
  cursor: pointer;
}

.l-header {
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}

.l-header__upper {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  position: relative;
  padding-left: 3.125%;
}

@media screen and (max-width: 1100px) {
  .l-header__upper {
    padding-left: 10px;
  }
}

@media screen and (max-width: 767px) {
  .l-header__upper {
    z-index: 10001;
    background: #fff;
    padding-left: 4%;
  }
}

.l-header__upper--links ul {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

.l-header__upper--links ul li a {
  display: block;
  color: #1f4d9b;
  position: relative;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  padding: 15px;
  font-feature-settings: "palt";
  transition: opacity .3s;
  line-height: 1.15;
}

.l-header__upper--links ul li a:hover {
  opacity: .7;
}

@media screen and (max-width: 1100px) {
  .l-header__upper--links ul li a {
    font-size: clamp(13px, 1.6vw, 15px);
    padding: 15px 1vw;
  }
}

.l-header__upper--links ul li a.link--external::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-external_blue02.png") no-repeat left center/contain;
  width: 11px;
  height: 11px;
  position: relative;
  margin-left: 5px;
  top: 1px;
}

.l-header__upper--links ul li a.link--search {
  padding: 20px;
  opacity: 1;
  font-size: 14px;
  font-size: 1.4rem;
}

.l-header__upper--links ul li a.link--search::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 15%;
  width: 1px;
  height: 70%;
  background: #d6d6d6;
}

@media screen and (max-width: 1100px) {
  .l-header__upper--links ul li a.link--search {
    padding: 20px 1.75vw;
  }
}

.l-header__upper--links ul li a.link--search::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-search_blue.png") no-repeat left center/contain;
  width: 20px;
  height: 21px;
  position: relative;
  margin-left: 5px;
  top: 3px;
}

.l-header__upper--links ul li a.link--search.active {
  background: #1f4c9b;
  color: #fff;
  z-index: 10001;
}

.l-header__upper--links ul li a.link--search.active::before {
  background: none;
}

.l-header__upper--links ul li a.link--search.active::after {
  background: url("../images/common/icon-search_white.png") no-repeat left center/contain;
}

.l-header__upper--links ul li a.upper-link--valve {
  display: flex;
  justify-content: flex-start;
}

.l-header__upper--links ul li a.upper-link--valve em {
  font-weight: bold;
  position: relative;
}

.l-header__upper--links ul li a.upper-link--valve em::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-external_blue02.png") no-repeat left center/contain;
  width: 11px;
  height: 11px;
  position: relative;
  margin-left: 5px;
  top: 1px;
}

.l-header__upper--links ul li a.upper-link--valve span {
  font-size: 13px;
  font-size: 1.3rem;
  margin-left: 0.75em;
  line-height: 1.2;
}

@media screen and (max-width: 1100px) {
  .l-header__upper--links ul li a.upper-link--valve span {
    font-size: clamp(11px, 1.5vw, 13px);
  }
}

@media screen and (max-width: 1100px) {
  .l-header__upper--links ul li a.upper-link--valve {
    padding-right: 1.75vw;
  }
}

@media screen and (max-width: 767px) {
  .l-header__upper--links {
    display: none;
  }
}

.l-header__upper--sp {
  position: relative;
  display: none;
}

@media screen and (max-width: 767px) {
  .l-header__upper--sp {
    display: flex;
    align-items: center;
    align-items: stretch;
  }
  .l-header__upper--sp .header-search_btn {
    position: relative;
    z-index: 10001;
  }
  .l-header__upper--sp .header-search_btn a {
    position: relative;
    display: block;
    padding: 20px;
    height: 100%;
  }
  .l-header__upper--sp .header-search_btn a::before {
    content: "";
    display: block;
    position: absolute;
    top: 15%;
    left: 0;
    width: 1px;
    height: 70%;
    background: #a3a3a3;
  }
  .l-header__upper--sp .header-search_btn a img {
    position: relative;
    display: block;
    width: 20px;
    height: auto;
  }
  .l-header__upper--sp .header-search_btn a img:last-child {
    position: absolute;
    opacity: 0;
  }
  .l-header__upper--sp .header-search_btn a.active {
    background: #1f4c9b;
  }
  .l-header__upper--sp .header-search_btn a.active::before {
    background: none;
  }
  .l-header__upper--sp .header-search_btn a.active img:first-child {
    position: absolute;
    opacity: 0;
  }
  .l-header__upper--sp .header-search_btn a.active img:last-child {
    position: relative;
    opacity: 1;
  }
}

@media screen and (max-width: 480px) {
  .l-header__upper--sp .header-search_btn a {
    padding: 20px 15px;
  }
}

.l-header__logo {
  position: relative;
  width: 123px;
}

.l-header__logo a {
  display: block;
  transition: opacity .3s;
}

.l-header__logo a:hover {
  opacity: .7;
}

.l-header__logo a img {
  width: 100%;
}

@media screen and (max-width: 1080px) {
  .l-header__logo {
    width: 110px;
  }
}

@media screen and (max-width: 767px) {
  .l-header__logo {
    width: 10rem;
  }
}

.l-header__inner {
  width: auto;
}

@media screen and (max-width: 767px) {
  .l-header__inner {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
}

.l-header__nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: nowrap;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .l-header__nav {
    width: 100%;
    position: fixed;
    opacity: 0;
    height: 0;
    left: 0;
    top: -100%;
    z-index: -1;
    transition: 0.3s cubic-bezier(0.95, 0.05, 0.795, 0.035);
    transform: translate(0, -150%);
    flex-direction: column;
    overflow-y: auto;
    background: rgba(10, 68, 143, 0.9);
    padding: 4% 5% 5%;
    padding-bottom: 150px;
    justify-content: flex-start;
    overscroll-behavior: none;
  }
  .l-header__nav.show {
    opacity: 1;
    position: fixed;
    height: calc(var(--vh, 1vh) * 100);
    min-height: 100vh;
    min-height: calc(var(--vh, 1vh) * 100);
    top: 60px;
    transition: 0.6s cubic-bezier(0.075, 0.82, 0.165, 1);
    transform: translate(0, 60px);
    transform: translateZ(0);
    z-index: 101;
  }
}

@media screen and (max-width: 767px) {
  .l-header__nav {
    display: block;
  }
}

.l-header__nav--upper {
  display: none;
}

@media screen and (max-width: 767px) {
  .l-header__nav--upper {
    display: block;
  }
  .l-header__nav--upper li a {
    position: relative;
    display: block;
    padding: 15px 0;
    border-bottom: 1px solid #fff;
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff;
    font-feature-settings: "palt";
  }
  .l-header__nav--upper li a span {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .l-header__nav--upper li a.link--external::after {
    content: "";
    display: inline-block;
    background: url("../images/common/icon-external_white02.png") no-repeat left center/contain;
    width: 12px;
    height: 12px;
    position: relative;
    margin-left: 0.5em;
    top: 1px;
  }
  .l-header__nav--upper li a .sp-br {
    display: none;
  }
}

@media screen and (max-width: 425px) {
  .l-header__nav--upper li a .sp-br {
    display: block;
  }
}

.l-header__nav__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
}

@media screen and (max-width: 767px) {
  .l-header__nav__list {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 767px) {
  .l-header__nav__list {
    margin-bottom: 10%;
  }
}

@media screen and (max-width: 767px) {
  .l-header__nav__list > li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
  }
}

.l-header__nav__list > li > a {
  padding: 0 15px;
  position: relative;
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 1100px) {
  .l-header__nav__list > li > a {
    font-size: clamp(12px, 1.65vw, 15px);
    padding: 0 0.5vw;
  }
}

@media screen and (max-width: 767px) {
  .l-header__nav__list > li > a {
    display: block;
    color: #fff;
    font-size: 17px;
    font-size: 1.7rem;
    border-bottom: 1px dotted #83a6d1;
    padding: 1.5rem 1rem 1.5rem 0;
  }
}

.l-header__nav__list > li > a::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 15px;
  margin: 4px auto 0;
  display: block;
  height: 2px;
  width: 0%;
  background: #248acf;
  transition: all 0.3s ease;
}

@media screen and (max-width: 767px) {
  .l-header__nav__list > li > a::after {
    display: none;
  }
}

.l-header__nav__list > li > a:hover {
  color: #248acf;
}

@media screen and (max-width: 767px) {
  .l-header__nav__list > li > a:hover {
    color: #fff;
  }
}

.l-header__nav__list > li > a:hover::after {
  opacity: 1;
  width: calc(100% - 30px);
}

.l-header__nav__list > li > a.hover-mega {
  display: flex;
  height: 56px;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .l-header__nav__list > li > a.hover-mega {
    display: none;
  }
}

.l-header__nav__list > li > a.hover-mega::after {
  display: none;
}

@media screen and (max-width: 767px) {
  .l-header__nav__container {
    width: 100%;
  }
}

.l-header__nav__links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .l-header__nav__links {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }
}

.l-header__nav__links li {
  width: 133px;
}

@media screen and (max-width: 1100px) {
  .l-header__nav__links li {
    width: 110px;
  }
}

@media screen and (max-width: 767px) {
  .l-header__nav__links li {
    width: 100%;
    margin-bottom: 10px;
  }
  .l-header__nav__links li:last-child {
    margin-bottom: 0;
  }
}

.l-header__nav__links li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 56px;
  color: #fff;
  transition: opacity .3s;
  font-size: 13px;
  font-size: 1.3rem;
}

.l-header__nav__links li a:hover {
  opacity: .7;
}

.l-header__nav__links li a.u-poppins {
  font-size: 13px;
  font-size: 1.3rem;
}

@media screen and (max-width: 767px) {
  .l-header__nav__links li a {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.l-header__nav__links li a span {
  position: relative;
  margin-left: 2em;
}

.l-header__nav__links li a span::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
}

.l-header__nav__links li.link--global a {
  background: #00a4c7;
}

.l-header__nav__links li.link--global a span::before {
  background: url("../images/common/icon-global.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  left: -2.6em;
  margin-top: -13px;
}

@media screen and (max-width: 1100px) {
  .l-header__nav__links li.link--global a span::before {
    width: 20px;
    height: 20px;
    left: -2em;
    margin-top: -10px;
  }
}

.l-header__nav__links li.link--contact {
  width: 153px;
}

@media screen and (max-width: 1100px) {
  .l-header__nav__links li.link--contact {
    width: 120px;
  }
}

@media screen and (max-width: 767px) {
  .l-header__nav__links li.link--contact {
    width: 100%;
  }
}

.l-header__nav__links li.link--contact a {
  background: #42b9f5;
}

.l-header__nav__links li.link--contact a span {
  margin-left: 3em;
}

.l-header__nav__links li.link--contact a span::before {
  background: url("../images/common/icon-mail.svg") no-repeat left center/contain;
  width: 29px;
  height: 20px;
  left: -3em;
  margin-top: -10px;
}

@media screen and (max-width: 1100px) {
  .l-header__nav__links li.link--contact a span::before {
    width: 24px;
    height: 16px;
    left: -2.2em;
    margin-top: -8px;
  }
}

.l-header__menu {
  padding: 20px;
}

@media screen and (max-width: 480px) {
  .l-header__menu {
    padding: 20px 15px;
  }
}

.l-header__menu > div {
  cursor: pointer;
  width: 28px;
  height: 22px;
  display: block;
  transition: 0.4s;
  position: relative;
}

.l-header__menu > div span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #418ac9;
}

.l-header__menu > div span:nth-of-type(1) {
  top: 0;
}

.l-header__menu > div span:nth-of-type(2) {
  width: 21px;
  margin-top: 10px;
}

.l-header__menu > div span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 100%;
  height: 3px;
  background-color: #418ac9;
  transition: 0.4s;
}

.l-header__menu > div span:nth-of-type(3) {
  width: 25px;
  bottom: 0;
}

.l-header__menu.active {
  background: #1f4c9b;
}

.l-header__menu.active span {
  background-color: #fff;
}

.l-header__menu.active span:nth-of-type(1) {
  transform: translateY(22px) scale(0);
}

.l-header__menu.active span:nth-of-type(2) {
  transform: rotate(-45deg);
  top: 0;
  width: 28px;
}

.l-header__menu.active span:nth-of-type(2)::after {
  transform: rotate(90deg);
  top: 0;
  background-color: #fff;
}

.l-header__menu.active span:nth-of-type(3) {
  transform: translateY(-22px) scale(0);
}

.l-header__search {
  display: none;
  width: 100%;
  position: absolute;
  top: 62px;
  left: 0;
}

.l-header__search--container {
  position: relative;
  width: 100%;
  background: #1f4c9b;
  padding: 50px 10px;
  z-index: 10000;
}

@media screen and (max-width: 767px) {
  .l-header__search--container {
    padding: 7% 5%;
  }
}

.l-header__search--mask {
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  width: 100%;
  height: 100vh;
  z-index: 9999;
  cursor: pointer;
}

.l-header__search .inner {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

.l-header__search .inner dl {
  color: #fff;
}

.l-header__search .inner dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .l-header__search .inner dl dt {
    text-align: center;
  }
}

.l-header__search--box {
  width: 100%;
  padding-bottom: 40px;
  border-bottom: 1px dotted #fff;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .l-header__search--box {
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 12%;
    white-space: nowrap;
    overflow: hidden;
  }
}

.l-header__search--box input[type="text"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background: #fff !important;
  border: none;
  border-radius: 0;
  background: none;
  font-size: 14px;
  font-size: 1.4rem;
  color: #a3a3a3;
  width: 78%;
  height: 50px;
  position: relative;
  margin-right: 2%;
  padding: 15px 20px;
}

@media screen and (max-width: 767px) {
  .l-header__search--box input[type="text"] {
    width: 78%;
    margin-right: 0;
  }
}

.l-header__search--box input[type="text"]:hover, .l-header__search--box input[type="text"]:focus {
  outline: none;
  background: #eee !important;
}

.l-header__search--box .search-input::-moz-placeholder {
  color: #ccc;
}

.l-header__search--box .search-input::placeholder {
  color: #ccc;
}

.l-header__search--box input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
  outline: none;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  cursor: pointer;
  background: #487cbc;
  width: 19.5%;
  height: 50px;
  padding: 15px 10px;
  white-space: nowrap;
  transition: opacity .3s;
}

.l-header__search--box input[type="submit"]:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .l-header__search--box input[type="submit"] {
    width: 22%;
    position: relative;
    left: -1vw;
  }
}

.l-header__search--links {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .l-header__search--links {
    flex-direction: column;
    margin-bottom: -8%;
  }
}

.l-header__search--links li {
  width: 28.125%;
  margin-right: 3.125%;
}

@media screen and (max-width: 767px) {
  .l-header__search--links li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.l-header__search--links li:nth-child(3n) {
  margin-right: 0;
}

.l-header__search--links li a {
  position: relative;
  display: block;
  background: #fff;
  color: #4b4e56;
  padding: 15px 10px;
  font-size: 14px;
  font-size: 1.4rem;
  border: 1px solid #1f4c9b;
  transition: 0.4s;
}

@media screen and (max-width: 767px) {
  .l-header__search--links li a {
    text-align: center;
  }
}

.l-header__search--links li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-top: 1px solid #1f4c9b;
  border-right: 1px solid #1f4c9b;
  transform: rotate(45deg);
  transition: 0.4s;
}

.l-header__search--links li a:hover {
  color: #fff;
  background: #1f4c9b;
  border: 1px solid #fff;
}

.l-header__search--links li a:hover::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.l-header__search--links li span {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  font-size: 1.4rem;
  font-feature-settings: "palt";
}

#overlay {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 99;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.65s, visibility 0.65s;
}

#overlay.l-overlay-active {
  opacity: 1;
  visibility: visible;
}

.l-navi__menu--mega .is-multiline a {
  padding-top: 8px;
  padding-bottom: 8px;
}

.l-navi__menu--mega.menu-current > a {
  position: relative;
  color: #418ac9;
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega.menu-current > a {
    color: #fff;
  }
}

.l-navi__menu--mega.menu-current > a::before {
  content: "";
  display: block;
  width: calc(100% - 30px);
  height: 5px;
  background: #418ac9;
  margin: 0 auto;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega.menu-current > a::before {
    display: none;
  }
}

.l-navi__menu--mega__container {
  display: none;
  position: absolute;
  left: 0;
  margin-left: inherit;
  top: 100%;
  width: 100%;
  max-height: 370px;
  margin: 0 auto;
  background: #f3f3f3;
  padding: 50px;
  z-index: 100;
}

@media screen and (max-width: 1279px) {
  .l-navi__menu--mega__container {
    padding: 50px 10px;
  }
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container {
    position: relative;
    left: inherit;
    top: inherit;
    max-width: 100%;
    max-height: unset;
    background-color: transparent;
    padding: 0.5em 1em;
    border-bottom: 1px dotted #83a6d1;
  }
}

.l-navi__menu--mega__container > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div {
    display: block;
  }
}

@media print, screen and (min-width: 768px) {
  .l-navi__menu--mega__container > div > div {
    max-width: calc(100% / 3);
    border-right: 2px solid #707070;
    padding-right: 25px;
  }
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div {
    padding-right: 0;
    max-width: unset;
    border-right: none;
  }
}

@media print, screen and (min-width: 768px) {
  .l-navi__menu--mega__container > div > div ul {
    max-height: 270px;
    padding-right: 55px;
    overflow-y: auto;
  }
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div ul {
    max-height: unset;
    padding-right: 0;
  }
}

.l-navi__menu--mega__container > div > div ul::-webkit-scrollbar {
  width: 24px;
  background: #fff;
}

.l-navi__menu--mega__container > div > div ul::-webkit-scrollbar-thumb {
  border: 7px solid transparent;
  box-shadow: inset 0 0 10px 10px #418ac9;
  border-radius: 18px;
}

.l-navi__menu--mega__container > div > div ul::-webkit-scrollbar-track {
  border: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div ul li {
    width: 100%;
    margin-right: 0;
  }
  .l-navi__menu--mega__container > div > div ul li a {
    border-bottom: none;
  }
  .l-navi__menu--mega__container > div > div ul li:last-child a {
    padding-bottom: 2%;
  }
}

.l-navi__menu--mega__container > div > div ul li a {
  flex: 1;
  width: 100%;
  position: relative;
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 15px 55px 15px 10px;
  border-radius: 4px;
}

@media screen and (max-width: 1279px) {
  .l-navi__menu--mega__container > div > div ul li a {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div ul li a {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 0.5rem 0;
    color: #fff;
    border-radius: 0;
    box-shadow: none;
  }
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div ul li a[target="_blank"] {
    padding-right: 23px;
  }
}

.l-navi__menu--mega__container > div > div ul li a[target="_blank"]::after {
  content: "";
  width: 13px;
  height: 9px;
  background: url("../images/common/icon-external_blue.svg") 0 0 no-repeat;
  background-size: 100% 100%;
  margin: auto;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div ul li a[target="_blank"]::after {
    background-image: url("../images/common/icon-external_white.svg");
    right: 0;
  }
}

.l-navi__menu--mega__container > div > div ul li a span {
  font-size: 13px;
  font-size: 1.3rem;
}

.l-navi__menu--mega__container > div > div ul li:hover a {
  color: #248acf;
  background: rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div ul li:hover a {
    color: #fff;
    background: none;
  }
}

@media print, screen and (min-width: 768px) {
  .l-navi__menu--mega__container > div > div ul li[data-parent] a::after {
    content: "";
    width: 15px;
    height: 15px;
    background: url("../images/common/icon-arrow-mega.svg") 0 0 no-repeat;
    background-size: 100% 100%;
    margin: auto;
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    display: inline-block;
  }
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div ul li[data-parent] a::after {
    content: none;
  }
}

.l-navi__menu--mega__container > div > div ul li[data-parent] a:hover::after {
  background-image: url("../images/common/icon-arrow-mega_on.svg");
}

.l-navi__menu--mega__container > div > div ul li[data-parent].is-current a {
  color: #248acf;
  background: rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div ul li[data-parent].is-current a {
    color: #fff;
    background: none;
  }
}

.l-navi__menu--mega__container > div > div ul li[data-parent].is-current a::before {
  background-image: url("../images/common/icon-arrow-mega_on.svg");
}

.l-navi__menu--mega__container > div > div + div {
  margin-left: 40px;
  display: none;
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega__container > div > div + div {
    display: none;
  }
}

.l-navi__menu--mega__container > div > div + div > ul {
  display: none;
}

.l-navi__menu--mega__container > div > div:nth-child(3) {
  flex: 1;
  padding-right: 0;
  border-right: none;
}

.l-navi__menu--mega-sp {
  display: none !important;
  position: relative;
}

@media screen and (max-width: 767px) {
  .l-navi__menu--mega-sp {
    display: block !important;
  }
  .l-navi__menu--mega-sp::before {
    content: "";
    display: block !important;
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -3px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(135deg);
  }
  .l-navi__menu--mega-sp.active {
    border-bottom: none !important;
  }
  .l-navi__menu--mega-sp.active::before {
    transform: rotate(315deg);
  }
}

.l-footer-sitemap {
  background: #00459f;
  padding: 80px 0 0;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap {
    padding: 8% 4% 0;
  }
}

.l-footer-sitemap__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
  padding: 0 10px 60px;
}

@media screen and (max-width: 1280px) {
  .l-footer-sitemap__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .l-footer-sitemap__inner {
    padding: 0 10px 60px;
  }
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__inner {
    flex-direction: column;
  }
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner {
    padding: 0 0 8%;
  }
}

.l-footer-sitemap__inner__info {
  width: 23%;
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__inner__info {
    width: 100%;
    order: 2;
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__info {
    margin-top: 10%;
  }
}

.l-footer-sitemap__inner__info__logo {
  width: 230px;
  margin-bottom: 50px;
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__inner__info__logo {
    margin-bottom: 25px;
  }
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__info__logo {
    width: 23rem;
    margin-bottom: 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .l-footer-sitemap__inner__info__logo {
    width: 61%;
  }
}

.l-footer-sitemap__inner__info__logo img {
  width: 100%;
}

.l-footer-sitemap__inner__info dl {
  color: #fff;
  margin-bottom: 50px;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__info dl {
    margin-bottom: 8%;
  }
}

.l-footer-sitemap__inner__info dl dt {
  font-weight: 700;
  margin-bottom: 10px;
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__info dl dt {
    margin-bottom: 2.5%;
  }
}

.l-footer-sitemap__inner__info dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
}

.l-footer-sitemap__inner__info__link {
  width: 90%;
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__inner__info__link {
    width: 290px;
  }
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__info__link {
    width: 70%;
    margin: 0 auto;
  }
}

.l-footer-sitemap__inner__info__link a {
  color: #fff;
  border: 1px solid #fff;
}

.l-footer-sitemap__inner__info__link a::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.l-footer-sitemap__inner__nav {
  width: 70%;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__inner__nav {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav {
    flex-direction: column;
  }
}

.l-footer-sitemap__inner__nav__summary {
  padding-right: 3.125%;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__summary {
    padding-right: 0;
    margin-bottom: 1px;
  }
}

.l-footer-sitemap__inner__nav__summary:last-child {
  padding-right: 0;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__list {
    padding: 2.5% 3%;
    background: rgba(255, 255, 255, 0.15);
  }
  .l-footer-sitemap__inner__nav__list.footer-sp__link {
    padding: 0;
  }
  .l-footer-sitemap__inner__nav__list.footer-sp__link li {
    border-bottom: 1px solid #00459f;
    margin-bottom: 0;
  }
  .l-footer-sitemap__inner__nav__list.footer-sp__link li:last-child {
    border-bottom: none;
  }
  .l-footer-sitemap__inner__nav__list.footer-sp__link li a {
    position: relative;
    display: block;
    padding: 2.5% 3%;
  }
  .l-footer-sitemap__inner__nav__list.footer-sp__link li a::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(45deg);
    right: 5.5%;
  }
}

.l-footer-sitemap__inner__nav__list + ul {
  margin-top: 25px;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__list + ul {
    margin-top: 1px;
    padding: 0 !important;
  }
  .l-footer-sitemap__inner__nav__list + ul li {
    border-bottom: none;
  }
}

.l-footer-sitemap__inner__nav__item {
  margin-bottom: 1.5em;
}

.l-footer-sitemap__inner__nav__item:last-of-type {
  margin-bottom: 0;
}

.l-footer-sitemap__inner__nav__item a {
  position: relative;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 1px;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__item a.toggle {
    display: block;
  }
  .l-footer-sitemap__inner__nav__item a.toggle::before, .l-footer-sitemap__inner__nav__item a.toggle::after {
    content: "";
    display: block;
    width: 1.5rem;
    height: 1px;
    background: #fff;
    position: absolute;
    right: 2%;
    top: 50%;
    transition: 0.3s;
  }
  .l-footer-sitemap__inner__nav__item a.toggle::after {
    transform: rotate(90deg);
  }
  .l-footer-sitemap__inner__nav__item a.toggle-active::after {
    transform: rotate(0deg);
  }
}

.l-footer-sitemap__inner__nav__item a.link__external::after {
  content: "";
  background: url("../images/common/icon-external_white.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  position: relative;
  display: inline-block;
  margin-left: 0.5em;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__item a.link__external::after {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__item a.link__external::before {
    content: "";
    background: url("../images/common/icon-external_white.svg") no-repeat left center/contain;
    width: 13px;
    height: 9px;
    position: absolute;
    display: block;
    top: 50%;
    right: 5%;
    margin-top: -4px;
  }
}

.l-footer-sitemap__inner__nav__item ul {
  margin-top: 1.5em;
  margin-left: 1em;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__item ul {
    display: none;
    margin-left: 0;
    padding-left: 0.5em;
  }
}

.l-footer-sitemap__inner__nav__item ul li {
  margin-bottom: 0.75em;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__item ul li {
    border-bottom: 1px dotted #fff;
  }
  .l-footer-sitemap__inner__nav__item ul li:first-child {
    border-top: 1px dotted #fff;
  }
  .l-footer-sitemap__inner__nav__item ul li:last-child {
    border-bottom: none;
  }
  .l-footer-sitemap__inner__nav__item ul li:last-child a {
    padding-bottom: 0 !important;
  }
  .l-footer-sitemap__inner__nav__item ul li:last-child a::after {
    margin-top: 4px;
  }
}

.l-footer-sitemap__inner__nav__item ul li a {
  font-weight: normal;
  letter-spacing: inherit;
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__item ul li a {
    display: block;
    padding: 3% 0;
  }
  .l-footer-sitemap__inner__nav__item ul li a::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(45deg);
    right: 3%;
  }
}

.l-footer-sitemap__inner__nav__item .f-menu_sp {
  display: none;
}

.l-footer-sitemap__inner__nav__item .f-menu_ttl,
.l-footer-sitemap__inner__nav__item .f-menu_list {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.1s;
}

.l-footer-sitemap__inner__nav__item .f-menu_ttl {
  position: relative;
  display: block;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
}

.l-footer-sitemap__inner__nav__item .f-menu_ttl::before, .l-footer-sitemap__inner__nav__item .f-menu_ttl::after {
  content: "";
  display: block;
  width: 1.5rem;
  height: 1px;
  background: #fff;
  position: absolute;
  right: 2%;
  top: 50%;
  transition: 0.3s;
}

.l-footer-sitemap__inner__nav__item .f-menu_ttl::after {
  transform: rotate(90deg);
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__inner__nav__item .f-menu_list {
    position: absolute;
    top: inherit;
    display: block;
    opacity: 0;
    overflow: hidden;
    margin-top: 0;
  }
}

.l-footer-sitemap__inner__nav__item .f-menu_sp:checked + .f-menu_ttl + .f-menu_list {
  position: relative;
  opacity: 1;
  margin-top: 1.5em;
}

.l-footer-sitemap__inner__nav__item .f-menu_sp:checked + .f-menu_ttl::after {
  transform: rotate(0deg);
}

.l-footer-sitemap__bottom {
  position: relative;
  background: #fff;
  padding: 20px 0;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__bottom {
    padding: 6.66% 0 3%;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
}

.l-footer-sitemap__bottom__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
}

@media screen and (max-width: 1280px) {
  .l-footer-sitemap__bottom__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .l-footer-sitemap__bottom__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__bottom__inner {
    flex-direction: column;
    align-items: flex-start;
  }
}

.l-footer-sitemap__bottom__links {
  width: 49%;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-top: -15px;
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__bottom__links {
    width: 100%;
    margin-top: 0;
    margin-bottom: 20px;
    align-items: center;
  }
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__bottom__links {
    padding: 0 4%;
    flex-direction: column;
    margin-bottom: 3%;
    align-items: flex-start;
  }
}

.l-footer-sitemap__bottom__links > li {
  margin: 15px 30px 0 0;
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__bottom__links > li {
    margin-top: 10px;
  }
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__bottom__links > li {
    margin-right: 0;
    margin-bottom: 1.5em;
  }
}

.l-footer-sitemap__bottom__links > li:last-child {
  margin-right: 0;
}

.l-footer-sitemap__bottom__links > li a {
  font-size: 16px;
  font-size: 1.6rem;
}

.l-footer-sitemap__bottom__links > li a:hover {
  text-decoration: underline;
}

.l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social {
    display: block;
  }
}

.l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social > a {
  margin-right: 25px;
}

.l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social > ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social > ul {
    margin-top: 1.5em;
  }
}

.l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social > ul li {
  width: 40px;
  height: 40px;
  margin-right: 20px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social > ul li {
    width: 30px;
    height: 30px;
    margin-right: 15px;
  }
}

.l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social > ul li:last-child {
  margin-right: 0;
}

.l-footer-sitemap__bottom__links > li.l-footer-sitemap__bottom__links__social > ul li a:hover {
  opacity: 0.7;
}

.l-footer-sitemap__bottom__symbol {
  width: 50%;
  display: flex;
  align-items: flex-end;
  flex-direction: column;
}

@media screen and (max-width: 1080px) {
  .l-footer-sitemap__bottom__symbol {
    width: 100%;
    display: block;
  }
}

.l-footer-sitemap__bottom__symbol p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__bottom__symbol p {
    align-items: flex-start;
    padding: 0 4%;
  }
}

.l-footer-sitemap__bottom__symbol p i {
  width: 36px;
  margin-right: 14px;
}

.l-footer-sitemap__bottom__symbol p i img {
  width: 100%;
}

.l-footer-sitemap__bottom__symbol p > span {
  width: calc(100% - 50px);
  font-size: 13px;
  font-size: 1.3rem;
}

.l-footer-sitemap__bottom__symbol p > span span {
  display: inline-block;
  line-height: 1;
  position: relative;
  top: 2px;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__bottom__symbol p > span span {
    line-height: 0.9;
  }
}

.l-footer-sitemap__bottom__symbol p > span sup {
  vertical-align: middle;
  font-size: 26px;
  font-size: 2.6rem;
  position: relative;
  top: 2px;
}

.l-footer-sitemap__bottom__copy {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
  margin-top: 20px;
  border-top: 1px solid #ddd;
  padding-top: 20px;
}

@media screen and (max-width: 767px) {
  .l-footer-sitemap__bottom__copy {
    font-size: 13px;
    font-size: 1.3rem;
    align-self: center;
    margin-top: 4%;
    padding-top: 3%;
  }
}

.l-footer-pagetop {
  position: fixed;
  right: 2%;
  bottom: 4%;
  z-index: 99;
  transition: opacity .3s;
}

.l-footer-pagetop:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .l-footer-pagetop {
    width: 7rem;
  }
  .l-footer-pagetop img {
    display: block;
    width: 100%;
  }
}

.l-flt-bnr {
  position: fixed;
  bottom: 50px;
  left: 20px;
  z-index: 10;
  display: none;
}

@media screen and (max-width: 425px) {
  .l-flt-bnr {
    width: 140px;
    bottom: 30px;
    left: 10px;
    display: block;
  }
}

.l-flt-bnr__close {
  width: 26px;
  height: 26px;
  background: url("../images/common/bnr-susaki-close.png") 0 0 no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: -9px;
  right: -11px;
  z-index: 1;
  display: inline-block;
  cursor: pointer;
}

@media screen and (max-width: 425px) {
  .l-flt-bnr__close {
    width: 20px;
    height: 20px;
    top: -6px;
    right: -8px;
  }
}

.l-flt-bnr a {
  border-radius: 15px;
  box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.3);
  display: inline-block;
  transition: opacity .3s;
}

.l-flt-bnr a:hover {
  opacity: .7;
}

@media screen and (max-width: 425px) {
  .l-flt-bnr a {
    border-radius: 8px;
  }
}

.l-flt-bnr.is-hidden {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}

.l-recruit {
  position: relative;
  z-index: 1;
  width: 100%;
  background: url("../images/top/top-recruit-bg.jpg") no-repeat left center/cover;
  height: 490px;
}

@media screen and (max-width: 767px) {
  .l-recruit {
    background: url("../images/top/top-recruit-bg-sp.jpg") no-repeat left center/cover;
    height: 96vw;
  }
}

.l-recruit::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../images/common/bg-mask.png");
  width: 100%;
  height: 100%;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .l-recruit::after {
    display: none;
  }
}

.l-recruit__inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  flex-direction: column;
  z-index: 10;
  height: 100%;
}

.l-recruit__inner h2 {
  color: #fff;
}

@media screen and (max-width: 767px) {
  .l-recruit__inner h2 {
    font-size: 30px;
    font-size: 3rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .l-recruit__inner h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 767px) {
  .l-recruit__inner h2 em {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.l-recruit__inner p {
  text-align: center;
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .l-recruit__inner p {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.6;
  }
}

.l-recruit__inner ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
  width: 600px;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .l-recruit__inner ul {
    flex-direction: column;
    width: 73%;
    margin-top: 10%;
    margin-bottom: -4%;
  }
}

.l-recruit__inner ul li {
  width: 46%;
}

@media screen and (max-width: 767px) {
  .l-recruit__inner ul li {
    width: 100%;
    margin-bottom: 4%;
  }
}

.l-recruit__inner ul li a {
  color: #fff;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid #E6E6E6;
}

.l-recruit__inner ul li a::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

@media screen and (max-width: 767px) {
  .l-recruit__inner ul li a {
    font-size: 20px;
    font-size: 2rem;
  }
}

.l-bnr {
  background: #F3F4F4;
  padding: 80px 10px;
}

@media screen and (max-width: 767px) {
  .l-bnr {
    padding: 13% 5%;
  }
}

.l-bnr__inner {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

.l-bnr__inner ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  margin-bottom: -2%;
}

@media screen and (max-width: 767px) {
  .l-bnr__inner ul {
    margin-bottom: -3%;
  }
}

.l-bnr__inner ul li {
  width: 18.9%;
  margin-right: 1.2%;
  margin-bottom: 1.2%;
}

@media screen and (max-width: 767px) {
  .l-bnr__inner ul li {
    width: 48%;
    margin-bottom: 3%;
    margin-right: 4%;
  }
  .l-bnr__inner ul li:nth-child(2n) {
    margin-right: 0 !important;
  }
}

.l-bnr__inner ul li:nth-child(5n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .l-bnr__inner ul li:nth-child(5n) {
    margin-right: 4%;
  }
}

.l-bnr__inner ul li a {
  display: block;
  transition: opacity .3s;
}

.l-bnr__inner ul li a:hover {
  opacity: .7;
}

.l-bnr__inner ul li a img {
  width: 100%;
  position: relative;
  z-index: 2;
}

.l-contact {
  position: relative;
  background: #F3F4F4;
  mix-blend-mode: multiply;
}

@media screen and (max-width: 767px) {
  .l-contact {
    padding: 13% 5%;
  }
}

.l-contact__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
  height: 370px;
}

@media screen and (max-width: 1280px) {
  .l-contact__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .l-contact__inner {
    flex-direction: column;
    height: auto;
  }
}

.l-contact__inner > div {
  width: 50%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  flex-direction: column;
}

@media screen and (max-width: 767px) {
  .l-contact__inner > div {
    width: 100%;
    display: block;
  }
}

.l-contact__inner > div h2 {
  font-size: 28px;
  font-size: 2.8rem;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .l-contact__inner > div h2 {
    font-size: 22px;
    font-size: 2.2rem;
    margin-bottom: 5%;
  }
}

.l-contact__inner > div p {
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .l-contact__inner > div p {
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .l-contact__inner > div p br {
    display: none;
  }
}

.l-contact__inner__product {
  border-right: 1px dotted #B9B9B9;
}

@media screen and (max-width: 767px) {
  .l-contact__inner__product {
    border-right: none;
    border-bottom: 1px dotted #707070;
    padding-bottom: 10%;
    margin-bottom: 10%;
  }
}

.l-contact__inner__link {
  width: 240px;
}

@media screen and (max-width: 767px) {
  .l-contact__inner__link {
    width: 64%;
    margin: 0 auto;
  }
}

.l- .page-id-36 .l-contact {
  background: #fff;
}

.c-ttl--type01 {
  color: #004DA1;
  text-align: center;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 40px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-ttl--type01 {
    font-size: 28px;
    font-size: 2.8rem;
  }
}

.c-ttl--type01 span {
  font-size: 80%;
  font-weight: 700;
  padding: 0 .5em;
}

.c-ttl--type01 em {
  display: block;
  text-align: center;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 700;
  margin-top: 20px;
  font-family: 'Noto Sans CJK JP', 'Noto Sans JP', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
}

@media screen and (max-width: 767px) {
  .c-ttl--type01 em {
    margin-top: 4%;
  }
}

.c-ttl--type02 {
  position: relative;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #004DA1;
  overflow: hidden;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .c-ttl--type02 {
    margin-bottom: 6.66%;
  }
}

.c-ttl--type02 span {
  position: relative;
  display: inline-block;
}

.c-ttl--type02 span::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  width: 2000%;
  height: 1px;
  display: inline-block;
  background: #82A4C9;
  margin-left: 1em;
}

.c-ttl--type03 {
  position: relative;
  text-align: center;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  color: #004DA1;
  display: inline-block;
  line-height: 1;
  width: auto;
  margin: 0 auto 70px;
  left: 50%;
  transform: translate(-50%, 0);
}

@media screen and (max-width: 767px) {
  .c-ttl--type03 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 10%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-ttl--type03 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 13%;
  }
}

.c-ttl--type03::after {
  content: "";
  display: block;
  width: 9rem;
  border-bottom: 2px dotted #034FA2;
  position: absolute;
  left: 50%;
  bottom: -2.5rem;
  margin-left: -4.5rem;
}

.c-ttl--type03 em {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  margin-left: .5rem;
  position: relative;
  top: 1px;
}

.c-ttl--type04 {
  color: #004DA1;
  font-size: 30px;
  font-size: 3rem;
  font-weight: 700;
  border-bottom: 1px solid #E6E6E6;
  padding-bottom: 15px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .c-ttl--type04 {
    font-size: 26px;
    font-size: 2.6rem;
    padding-bottom: 3%;
    margin-bottom: 6%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-ttl--type04 {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

.c-txt--link__external {
  position: relative;
}

.c-txt--link__external::after {
  content: "";
  background: url("../images/common/icon-external_blue.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  position: relative;
  display: inline-block;
  margin-left: .5em;
}

.c-txt--link__external.external-white::after {
  background: url("../images/common/icon-external_white.svg") no-repeat left center/contain;
}

.c-btn--type01 {
  position: relative;
  display: block;
  border: 1px solid #004DA1;
  border-radius: 6rem;
  color: #004DA1;
  font-size: 1.8rem;
  font-weight: 500;
  padding: 10px;
  text-align: center;
  transition: opacity .3s;
}

.c-btn--type01:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .c-btn--type01 {
    padding: 3.5% 1rem;
  }
}

.c-btn--type01::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004DA1;
  border-right: 1px solid #004DA1;
  transform: rotate(45deg);
}

.c-btn--type01.link--external::after {
  background: url("../images/common/icon-external_blue.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  margin-top: -4px;
  border: none;
  transform: none;
}

.c-btn--type01.link--external-white::after {
  background: url("../images/common/icon-external_white.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  margin-top: -4px;
  border: none;
  transform: none;
}

.c-btn--type01.link--pdf::after {
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  margin-top: -13px;
  border: none;
  transform: none;
}

.c-arrow {
  position: relative;
}

.c-arrow::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  margin-left: .25em;
}

.c-list--pagenavi {
  margin-top: 60px;
}

.c-list--pagenavi .wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.c-list--pagenavi .wp-pagenavi > * {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 5.5px 13px;
}

.c-list--pagenavi .wp-pagenavi > * + * {
  margin-left: 10px;
}

.c-list--pagenavi .wp-pagenavi span {
  color: #fff;
  background: #333;
  border: 1px solid #333;
}

.c-list--pagenavi .wp-pagenavi a {
  border: 1px solid #000;
}

.c-list--pagenavi .wp-pagenavi a.previouspostslink, .c-list--pagenavi .wp-pagenavi a.nextpostslink {
  border: none;
}

.c-list--ol li {
  margin-bottom: 1.5em;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  text-indent: -1em;
  margin-left: 1em;
}

.c-list--ol li:last-child {
  margin-bottom: 0;
}

.c-list--ol.privacy-note li {
  margin-bottom: .5em;
}

.c-table {
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-table {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.c-table caption {
  color: #004da1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .c-table caption {
    margin-bottom: 4%;
  }
}

.c-table tr {
  border-top: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
}

.c-table tr:nth-child(odd) {
  background: #f9f9f9;
}

.c-table tr th {
  width: 21.88%;
  line-height: 1.88;
  text-align: left;
  vertical-align: middle;
  padding: 25px 0 25px 15px;
}

@media screen and (max-width: 767px) {
  .c-table tr th {
    display: block;
    width: 100%;
    padding: 4%;
    padding-bottom: 2.5%;
    line-height: 1.4;
  }
}

.c-table tr td {
  line-height: 1.88;
  vertical-align: middle;
  padding: 25px 15px 25px 0;
}

@media screen and (max-width: 767px) {
  .c-table tr td {
    display: block;
    width: 100%;
    padding: 0 4% 4%;
    line-height: 1.4;
  }
}

.c-table--type02 {
  width: 100%;
}

.c-table--type02 thead {
  border-bottom: 2px solid #418ac9;
}

.c-table--type02 thead th {
  color: #004da1;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: center;
  padding: 0 10px 10px 10px;
  width: 70%;
}

.c-table--type02 thead th:first-child {
  width: 30%;
}

.c-table--type02 tr:nth-child(even) {
  background: #f9f9f9;
}

.c-table--type02 td {
  border: 1px solid #e6e6e6;
  padding: 20px;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .c-table--type02 td {
    padding: 4% 2%;
  }
}

.c-table--type02--ver01 {
  max-width: 600px;
  margin: 0 auto;
}

.c-table--type02--ver01 thead th {
  font-size: 15px;
  font-size: 1.5rem;
}

.c-table--type02--ver01 td {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 7px;
}

.c-table--type03 {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .c-table--type03 {
    margin-bottom: -4.5%;
  }
}

.c-table--type03 th,
.c-table--type03 td {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 30px 2em;
}

@media screen and (max-width: 767px) {
  .c-table--type03 th,
  .c-table--type03 td {
    display: block;
  }
}

.c-table--type03 th {
  width: 18%;
  color: #004da1;
  font-weight: bold;
  border-bottom: 2px solid #004da1;
  text-align: center;
  padding: 30px 10px;
}

@media screen and (max-width: 767px) {
  .c-table--type03 th {
    width: 100%;
    border-bottom: none;
    text-align: left;
    padding: 0 0 0.5em;
  }
  .c-table--type03 th br {
    display: none;
  }
}

.c-table--type03 td {
  width: 82%;
  border-bottom: 1px solid #e6e6e6;
}

@media screen and (max-width: 767px) {
  .c-table--type03 td {
    width: 100%;
    padding: 0 0 1em;
    margin-bottom: 4.5%;
  }
}

.c-table--type03 td p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  margin-bottom: 20px;
}

.c-table--type03 td p:last-of-type {
  margin-bottom: 0;
}

.c-table--type03 td ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  margin-bottom: 10px;
  text-indent: -1.25em;
  margin-left: 1.25em;
  font-feature-settings: "palt";
}

.c-table--type03 td ul li:last-child {
  margin-bottom: 0;
}

.c-table--type04 {
  width: 100%;
  border: 1px solid #e6e6e6;
  border-bottom: none;
  border-right: none;
}

.c-table--type04 th,
.c-table--type04 td {
  padding: 15px 5px;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  vertical-align: middle;
  background: #fff;
  border-bottom: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .c-table--type04 th,
  .c-table--type04 td {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 480px) {
  .c-table--type04 th,
  .c-table--type04 td {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

.c-table--type04 th {
  background: #eef3f9;
  color: #004da1;
  padding: 10px 5px;
}

.c-table--type04 tr:nth-child(even) td {
  background: rgba(230, 230, 230, 0.4);
}

.c-table--type04 .td-bg_gray td {
  background: rgba(230, 230, 230, 0.4) !important;
}

.c-table--type04 .td-bg_white {
  background: #fff !important;
}

.c-table--type04 thead {
  position: relative;
  background-clip: padding-box;
}

.c-table--type04 thead::after {
  content: "";
  display: block;
  background: #004da1;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  top: 100%;
}

.c-table--type04 thead tr:last-child th {
  border-bottom: none;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .c-table--scroll table {
    min-width: 600px;
  }
}

.c-form-body table {
  width: 100%;
}

.c-form-body table tr:not(:first-child) {
  border-top: 1px solid #e6e6e6;
}

@media screen and (max-width: 767px) {
  .c-form-body table tr:first-child th {
    padding-top: 0;
  }
}

.c-form-body table tr th {
  width: 30%;
  font-size: 18px;
  font-size: 1.8rem;
  vertical-align: middle;
  text-align: left;
  position: relative;
  padding: 20px 0;
}

@media screen and (max-width: 992px) {
  .c-form-body table tr th {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .c-form-body table tr th {
    padding: 4% 0 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-form-body table tr th {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.c-form-body table tr td {
  width: 70%;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 20px 0;
  padding-left: 3%;
  vertical-align: middle;
  word-break: break-all;
}

@media screen and (max-width: 992px) {
  .c-form-body table tr td {
    display: block;
    width: 100%;
    padding-left: 0;
  }
}

@media screen and (max-width: 767px) {
  .c-form-body table tr td {
    padding: 4% 0;
  }
}

.c-form-body table tr td input[type="text"],
.c-form-body table tr td input[type="email"] {
  width: 100%;
  height: 60px;
  padding: 1em;
  font-size: 18px;
  font-size: 1.8rem;
  border: none;
  border-radius: 4px;
  background: #f3f5f5;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-form-body table tr td input[type="text"],
  .c-form-body table tr td input[type="email"] {
    height: 50px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.c-form-body table tr td input[type="text"]:hover, .c-form-body table tr td input[type="text"]:focus,
.c-form-body table tr td input[type="email"]:hover,
.c-form-body table tr td input[type="email"]:focus {
  border: none;
  outline: none;
  background: #e7ebeb;
}

.c-form-body table tr td input[type="text"].input50,
.c-form-body table tr td input[type="email"].input50 {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .c-form-body table tr td input[type="text"].input50,
  .c-form-body table tr td input[type="email"].input50 {
    width: 100%;
  }
}

.c-form-body table tr td textarea {
  width: 100%;
  min-height: 230px;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 1em;
  border: none;
  background: #f3f5f5;
  border-radius: 4px;
  resize: vertical;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-form-body table tr td textarea {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.c-form-body table tr td textarea:hover, .c-form-body table tr td textarea:focus {
  border: none;
  outline: none;
  background: #e7ebeb;
}

.c-form-body__radio {
  width: 1.6rem;
  height: 1.6rem;
  margin-right: 0.5rem;
}

.c-form-body label {
  position: relative;
  display: inline-block;
  cursor: pointer;
  font-size: 16px;
  font-size: 1.6rem;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  word-break: break-all;
}

.c-form-body__required {
  position: absolute;
  right: 0;
  margin-top: 3px;
  background: #e04545;
  border-radius: 6px;
  color: #fff;
  text-align: center;
  display: inline-block;
  font-size: 15px;
  font-size: 1.5rem;
  width: 66px;
  padding: 0.25rem 0.5rem;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-form-body__required {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

.c-form-body__required.v-align {
  top: 30px;
}

@media screen and (max-width: 767px) {
  .c-form-body__required.v-align {
    top: inherit;
  }
}

.c-form-body__select {
  position: relative;
  overflow: hidden;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  width: 60%;
  height: 60px;
}

@media screen and (max-width: 767px) {
  .c-form-body__select {
    width: 100%;
  }
}

.c-form-body__select select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: #f3f5f5;
  border-radius: 4px;
  color: #004da1;
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  height: 100%;
  padding: 1rem 2rem;
}

.c-form-body__select select::-ms-expand {
  display: none;
}

.c-form-body__select::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004da1;
  border-right: 1px solid #004da1;
  transform: rotate(135deg);
  right: 20px;
}

.c-form-body__submit {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 184px;
  margin: 30px auto 0;
  position: relative;
}

.c-form-body__submit li {
  width: 100%;
  position: relative;
}

.c-form-body__submit li::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  right: 20px;
}

.c-form-body__submit li:last-child {
  display: none;
}

.c-form-body input[type="submit"] {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  padding: 1rem;
  border-radius: 60px;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  background: #004da1;
  color: #fff;
  border: 1px solid #004da1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  transition: opacity .3s;
}

.c-form-body input[type="submit"]:hover {
  opacity: .7;
}

.c-form-body input[type="submit"][name="submitBack"] {
  background: #707070;
  border-color: #707070;
}

.c-form-body input[type="submit"][name="submitBack"]:hover {
  color: #707070;
  background: #fff;
}

.c-form-body__check ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .c-form-body__check ul {
    flex-direction: column;
  }
}

.c-form-body__check ul li:not(:last-child) {
  margin-right: 3em;
}

@media screen and (max-width: 767px) {
  .c-form-body__check ul li:not(:last-child) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .c-form-body__check ul li:last-child {
    margin-top: 3%;
  }
}

.c-form-body__check__txt {
  font-size: 16px;
  font-size: 1.6rem;
}

.c-form-body__check__txt a {
  color: #004da1;
  text-decoration: underline;
}

.c-form-body__check__txt a:hover {
  text-decoration: none;
}

.c-form-body .error {
  font-size: 1.6rem !important;
  margin-top: 1rem;
}

.c-form-body.confirm-form th span {
  display: none;
}

.c-form-body.confirm-form .c-form-body__select {
  background: #fff;
  padding: 0;
  width: 100%;
  height: inherit;
  text-align: left;
}

.c-form-body.confirm-form .c-form-body__select select {
  padding: 0;
}

.c-form-body.confirm-form .c-form-body__select::after {
  display: none;
}

.c-form-body.confirm-form .c-form-body__check {
  display: none;
}

.c-form-body.confirm-form .c-form-body__submit {
  width: 100%;
  max-width: 540px;
}

.c-form-body.confirm-form .c-form-body__submit li {
  width: 49%;
  margin-right: 2%;
}

.c-form-body.confirm-form .c-form-body__submit li:first-child {
  order: 2;
  margin-right: 0;
}

.c-form-body.confirm-form .c-form-body__submit li:last-child {
  order: 1;
  display: block;
}

.c-form-body.confirm-form .c-form-body__submit li:last-child::after {
  transform: rotate(225deg);
  right: inherit;
  left: 20px;
}

.c-search__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

@media screen and (max-width: 1280px) {
  .c-search__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .c-search__inner {
    display: block;
  }
}

.c-search p {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  color: #004da1;
  margin: 12px 65px 0 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-search p {
    font-size: 21px;
    font-size: 2.1rem;
    margin: 0 0 10px 0;
  }
}

.c-search form {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-search form {
    flex: unset;
    display: block;
  }
}

.c-search form > div {
  flex: 1;
  margin-right: 25px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-search form > div {
    flex: unset;
    width: 100%;
    margin: 0 0 15px 0;
  }
}

.c-search form > div input {
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
  background: #f3f5f5;
  border: none;
  border-radius: 4px;
  padding: 18px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-search form > div input {
    padding: 15px;
  }
}

.c-search form > div input::-moz-placeholder {
  color: #bababa;
}

.c-search form > div input::placeholder {
  color: #bababa;
}

.c-search form > div input::-webkit-search-cancel-button {
  opacity: 1;
}

.c-search form button {
  width: 185px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  background: #004da1;
  border-radius: 60px;
  padding: 16px 0;
  margin-top: 5px;
  position: relative;
  transition: opacity .3s;
}

.c-search form button:hover {
  opacity: .7;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-search form button {
    width: 50%;
    font-size: 16px;
    font-size: 1.6rem;
    padding: 14px 0;
    margin: 0 auto;
    display: block;
  }
}

.c-search form button::before {
  content: "";
  width: 25px;
  height: 25px;
  background: url(../images/common/icon-search.svg) 0 0 no-repeat;
  background-size: 100%;
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 20px;
  display: inline-block;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-search form button::before {
    width: 21px;
    height: 21px;
  }
}

.c-search small {
  font-size: 14px;
  margin-top: 5px;
  display: inline-block;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .c-search small {
    font-size: 12px;
  }
}

.c-breadcrumb {
  background: #fff;
  padding: 10px 0;
}

.c-breadcrumb__list {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 1280px) {
  .c-breadcrumb__list {
    padding: 0 10px;
  }
}

.c-breadcrumb__item {
  position: relative;
  font-size: 13px;
  font-size: 1.3rem;
}

.c-breadcrumb__item::before {
  content: ">";
  display: inline-block;
  margin: 0 1em;
  position: relative;
  top: 1px;
}

.c-breadcrumb__item:first-child::before {
  display: none;
}

.c-breadcrumb__item a {
  font-size: 13px;
  font-size: 1.3rem;
  color: #004DA1;
  transition: opacity .3s;
}

.c-breadcrumb__item a:hover {
  opacity: .7;
}

#cookie-notice {
  font-family: inherit !important;
}

#cookie-notice .cookie-notice-container {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 1.2em !important;
  display: flex !important;
  align-items: flex-end;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  #cookie-notice .cookie-notice-container {
    display: block !important;
  }
}

#cookie-notice .cookie-notice-container .cn-text-container {
  flex: 1;
  line-height: 1.5;
  text-align: left;
}

@media screen and (max-width: 768px) {
  #cookie-notice .cookie-notice-container .cn-text-container {
    flex: unset;
    margin-bottom: 1em;
  }
}

#cookie-notice .cookie-notice-container .cn-text-container a {
  color: #fff;
}

#cookie-notice .cookie-notice-container .cn-text-container a:hover {
  text-decoration: underline;
}

#cookie-notice .cookie-notice-container .cn-buttons-container .cookie-agree {
  width: auto;
}

#cookie-notice .cookie-notice-container .cn-buttons-container .cookie-agree[id="cn-refuse-cookie"] {
  color: #333;
  background: #fff;
}

#cookie-notice .cookie-notice-container .cn-close-icon {
  opacity: 1;
}

@media screen and (max-width: 768px) {
  #cookie-notice .cookie-notice-container .cn-close-icon {
    top: auto;
    bottom: 25px;
  }
}

#cookie-notice .cookie-notice-container .cn-close-icon::before, #cookie-notice .cookie-notice-container .cn-close-icon::after {
  width: 3px;
  height: 30px;
  background-color: #fff;
}

#cookie-notice.cookie-notice-hidden .cookie-notice-container {
  display: none !important;
}

.p- {
  /* TOP */
  /* PAGE */
  /* 会社案内 */
  /* 会社概要 */
  /* トップメッセージ */
  /* 企業理念・行動指針 */
  /* キッツグループ */
  /* 国内外拠点 */
  /* キッツのあゆみ */
  /* 企業広告 */
  /* 統合報告書（コーポレートレポート） */
  /* お問い合わせ */
  /* キッツとは */
  /* 製品/サービス案内 */
  /* 事業紹介 */
  /* バルブ事業 */
  /* 研究開発 */
  /* 生産品質管理 */
  /* ネットワーク力 */
  /* 私たちの強み */
  /* その他の事業 */
  /* 投稿ページ */
  /* よくある質問、トラブルシューティング */
  /*===== ▼▼ サステナビリティ TOP ▼▼ =====*/
  /*===== ▼▼ 担当役員メッセージ ▼▼ =====*/
  /*===== ▼▼ サステナビリティ 下層ページナビ ▼▼ =====*/
  /* 下層ページナビ */
  /* その他のカテゴリー */
  /*===== ▼▼ キッツグループのサステナビリティ ▼▼ =====*/
  /* 共通リンクボックス リスト */
  /* サステナビリティマネジメント */
  /* サステナビリティ経営重点テーマ */
  /* 外部イニシアティブへの参画 */
  /*===== ▼▼ 持続的な成長に向けた技術・知財戦略 ▼▼ =====*/
  /* 持続的な成長に向けた技術・知財戦略TOP */
  /*===== ▼▼ 環境 ▼▼ =====*/
  /* 環境TOP */
  /* 気候変動への対応 */
  /* グループ会社別データ */
  /* キッツグループ環境方針・環境長期ビジョン */
  /* 環境マネジメントシステム */
  /* 環境会計 */
  /* 製品・サービスにおける環境配慮 */
  /* 製品・サービスにおける環境配慮 */
  /* 廃棄物の管理 */
  /* 化学物質の適正管理と削減 */
  /* 事業活動と環境負荷（マテリアルバランス）*/
  /* 環境リスクへの対応 */
  /* 環境リスクへの対応 */
  /* 環境リスクへの対応 */
  /* 環境リスクへの対応 */
  /* 環境リスクへの対応 */
  /* キッツグループ環境・安全衛生ダイジェスト */
  /*=====  ▼▼ 社会 ▼▼ =====*/
  /* 社会TOP */
  /* 人権尊重 */
  /* 人財を支える取り組み */
  /* 健康経営と労働安全衛生の確保 */
  /* サプライチェーンマネジメント */
  /* 社会貢献活動 */
  /*=====  ▼▼ ガバナンス ▼▼ =====*/
  /* ガバナンスTOP */
  /* コーポレートガバナンス */
  /*===== ▼▼ 品質向上 ▼▼ =====*/
  /* 品質理念 */
  /* 品質への取り組み */
  /*===== ▼▼ ステークホルダーとの対話 ▼▼ =====*/
  /*===== ▼▼ サステナビリティファイナンス ▼▼ =====*/
  /*===== ▼▼ ESGデータ集 ▼▼ =====*/
  /*===== ▼▼ 新着情報 ▼▼ =====*/
  /* 資材調達情報 */
  /* バルブの技術研修 */
  /* 各種計算ツール */
  /* バルブの基礎知識 */
}

.p-top-mv {
  position: relative;
  width: 100%;
  background: url("../images/top/mv.jpg") no-repeat center/cover;
  height: 768px;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
}

@media screen and (max-width: 767px) {
  .p-top-mv {
    overflow: hidden;
  }
}

@media screen and (max-width: 767px) {
  .p-top-mv {
    flex-direction: column;
    justify-content: center;
    background: url("../images/top/mv-sp.jpg") no-repeat center/cover;
    height: auto;
    padding: 13% 0 8%;
  }
}

.p-top-mv::after {
  content: "";
  display: block;
  background: url("../images/top/bg-mv.png");
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .p-top-mv::after {
    display: none;
  }
}

.p-top-mv__ttl {
  position: relative;
  width: 50%;
  padding-left: 7%;
  z-index: 10;
}

@media screen and (max-width: 1440px) {
  .p-top-mv__ttl {
    padding-left: 3.5%;
    margin-bottom: 12%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-mv__ttl {
    width: 76%;
    padding-left: inherit;
  }
}

.p-top-mv__ttl img {
  width: 100%;
  max-width: 610px;
}

@media screen and (max-width: 767px) {
  .p-top-mv__ttl img {
    max-width: inherit;
  }
}

.p-top-mv__slide {
  position: absolute;
  z-index: 10;
  top: inherit;
  right: 0;
  width: 74%;
  -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 33%, black 41%);
}

@media all and (-ms-high-contrast: none) {
  .p-top-mv__slide {
    position: relative;
    width: 84%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-mv__slide {
    position: relative;
    width: 130%;
    left: -25%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-top-mv__slide {
    width: 175%;
    left: -30%;
  }
}

.p-top-mv__slide__box img {
  display: block;
}

@media all and (-ms-high-contrast: none) {
  .p-top-mv__slide__box img {
    width: 100%;
  }
}

.p-top-mv__slide__box span {
  display: block;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  margin-top: 15px;
  padding-left: 10%;
}

@media screen and (max-width: 767px) {
  .p-top-mv__slide__box span {
    font-size: 1.6rem;
    margin-top: 2rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-top-mv__slide__box span {
    font-size: 1.3rem;
  }
}

.p-top-mv__slide .splide__slide.is-next {
  -webkit-animation: splide 0.1s ease forwards;
          animation: splide 0.1s ease forwards;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}

.p-top-mv__slide .splide__slide.is-active {
  opacity: 0;
}

.p-top-mv__slide .is-next.is-active {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}

@-webkit-keyframes splide {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes splide {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.p-top__news {
  overflow: hidden;
  top: 0;
  left: 0;
  width: calc(100% - 80px);
  background: rgba(0, 128, 204, 0.9);
  font-size: 16px;
  font-size: 1.6rem;
  z-index: 98;
  padding: 10px 40px;
  color: #fff;
  box-sizing: content-box;
}

@media screen and (max-width: 767px) {
  .p-top__news {
    width: 90%;
    padding: 10px 5%;
    background: rgba(0, 128, 204, 0.7);
  }
}

.p-top__news > ul {
  position: relative;
}

.p-top__news > ul li {
  margin: auto 0;
  bottom: 0;
}

.p-top__news > ul li > span {
  display: block;
}

.p-top__news > ul li > span::before {
  content: "NEWS";
  display: inline-block;
  background: #fff;
  color: #0080cc;
  padding: 5px 10px;
  margin-right: 10px;
}

.p-top__news > ul li > span a {
  color: #fff;
}

.p-top__news > ul li > span a:hover {
  text-decoration: underline;
}

.p-top__news > ul li > span a.link-pdf {
  position: relative;
  padding-right: 1em;
  font-feature-settings: "palt";
}

.p-top__news > ul li > span a.link-pdf::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
  margin-top: 2px;
}

@media screen and (max-width: 767px) {
  .p-top__news > ul li > span a.link-pdf::after {
    margin-top: inherit;
  }
}

.p-top__news > ul li > span + span {
  margin-top: 10px;
}

.p-top__news > ul li.p-top__news__maintenance > span::before {
  content: "MAINTENANCE";
  display: inline-block;
  background: #fff;
  color: #0080cc;
  padding: 5px 10px;
  margin-right: 10px;
}

.p-top__news > ul li.slick-slide {
  border: none;
}

@-webkit-keyframes slider {
  from {
    transform: translateX(110%);
  }
  to {
    transform: translateX(0px);
  }
}

@keyframes slider {
  from {
    transform: translateX(110%);
  }
  to {
    transform: translateX(0px);
  }
}

@-webkit-keyframes flash {
  50% {
    opacity: 0;
  }
}

@keyframes flash {
  50% {
    opacity: 0;
  }
}

.p-top-product {
  padding: 120px 15px 80px;
  position: relative;
}

.p-top-product::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #f3f4f4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-top-product {
    padding: 12% 5.33%;
  }
}

.p-top-product__inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.p-top-product__link {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-top-product__link {
    margin-bottom: 6%;
  }
}

.p-top-product__link li {
  width: calc(20% - 1px);
  height: 240px;
  margin-right: 1px;
}

.p-top-product__link li:nth-child(5n) {
  width: 20%;
}

@media print, screen and (min-width: 768px) {
  .p-top-product__link li:nth-child(5n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 1199px) {
  .p-top-product__link li {
    height: 20vw;
  }
}

@media screen and (max-width: 767px) {
  .p-top-product__link li {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 4%;
    height: 42.5vw;
  }
  .p-top-product__link li:nth-child(5n) {
    width: 48%;
  }
  .p-top-product__link li:nth-child(2n) {
    margin-right: 0;
  }
}

.p-top-product__link li a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  transition: opacity .3s;
  overflow: hidden;
  border-bottom: 1px solid #f3f4f4;
}

.p-top-product__link li a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-top-product__link li a {
    border-bottom: none;
  }
}

.p-top-product__link li a img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  height: 240px;
  width: 100%;
  height: auto;
  transition-duration: .5s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@media screen and (max-width: 767px) {
  .p-top-product__link li a img {
    transition: none;
  }
}

.p-top-product__link li a img:hover {
  transform: scale(1.2);
  transition-duration: .5s;
}

@media screen and (max-width: 767px) {
  .p-top-product__link li a img:hover {
    transform: scale(1.2);
    transition: none;
  }
}

@media screen and (max-width: 1199px) {
  .p-top-product__link li a img {
    height: 20vw;
  }
}

@media screen and (max-width: 767px) {
  .p-top-product__link li a img {
    height: 42.5vw;
    border-radius: 4px;
  }
}

.p-top-product__link li a span {
  display: block;
  position: absolute;
  text-align: right;
  right: 25px;
  bottom: 10px;
  font-size: 15px;
  font-size: 1.5rem;
  color: #fff;
  z-index: 2;
}

@media screen and (max-width: 1199px) and (min-width: 768px) {
  .p-top-product__link li a span br {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-top-product__link li a span {
    font-feature-settings: "palt";
    font-size: 18px;
    font-size: 1.8rem;
    right: 3%;
    bottom: 3%;
  }
  .p-top-product__link li a span::after {
    display: none;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-top-product__link li a span {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-top-product__link li a span em {
  display: block;
  font-size: 11px;
  font-size: 1.1rem;
}

@media screen and (max-width: 767px) {
  .p-top-product__link li a span em {
    font-size: 1.2rem;
  }
}

.p-top-product__link li:nth-child(9) span {
  font-size: 14px;
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  .p-top-product__link li:nth-child(9) span {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-top-product__link li:nth-child(9) span {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-top-product__link02 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
}

@media screen and (max-width: 767px) {
  .p-top-product__link02 {
    flex-direction: column;
  }
}

.p-top-product__link02 li {
  width: 290px;
  margin-right: 30px;
}

@media screen and (max-width: 767px) {
  .p-top-product__link02 li {
    width: 78%;
    margin-right: 0;
    margin-bottom: 4%;
  }
}

.p-top-product__link02 li:last-child {
  margin-right: 0;
  margin-bottom: 0;
}

.p-top-solution {
  padding: 100px 15px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-top-solution {
    padding: 12% 0 15%;
  }
}

.p-top-solution__inner {
  width: 100%;
  max-width: 810px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-top-solution__inner {
    width: 80%;
    max-width: 100%;
  }
}

.p-top-solution__link li a {
  transition: opacity .3s;
}

.p-top-solution__link li a:hover {
  opacity: .7;
}

.p-top-solution__link li a img {
  width: 100%;
}

.p-top-solution__link li a p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 10px;
}

.p-top-solution__link li a[target] p::after {
  content: "";
  background: url(../images/common/icon-external_blue.svg) no-repeat left center/contain;
  width: 13px;
  height: 9px;
  position: relative;
  display: inline-block;
  margin-left: 0.5em;
}

.p-top-solution .splide__arrows {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-top-solution .splide__arrows {
    display: block;
  }
}

.p-top-solution .splide__arrows .splide__arrow {
  background-color: transparent;
  width: 4.2rem;
  height: auto;
  left: -2.5rem;
  opacity: 1;
}

.p-top-solution .splide__arrows .splide__arrow.splide__arrow--next {
  right: inherit;
  left: 100%;
  margin-left: -2.5rem;
}

.p-top-about {
  padding: 100px 15px;
  position: relative;
}

.p-top-about::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #f3f4f4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-top-about {
    padding: 13% 5%;
  }
}

.p-top-about__inner {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner {
    flex-direction: column;
  }
}

.p-top-about__inner__intro {
  width: 40%;
  margin-right: 5%;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__intro {
    width: 100%;
    margin-right: 0;
  }
}

.p-top-about__inner__intro h2 {
  text-align: left;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__intro h2 {
    text-align: center;
    margin-bottom: 10%;
  }
}

.p-top-about__inner__intro h2 em {
  text-align: left;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__intro h2 em {
    text-align: center;
    margin-top: 2.5%;
  }
}

.p-top-about__inner__intro__lead {
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 40px;
  padding-left: 15%;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__intro__lead {
    margin-bottom: 8%;
    padding-left: 1rem;
  }
}

.p-top-about__inner__intro__lead span {
  display: block;
  font-size: 50px;
  font-size: 5rem;
}

.p-top-about__inner__intro__txt {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  padding-left: 15%;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__intro__txt {
    padding-left: 0;
  }
}

.p-top-about__inner__link {
  width: 55%;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link {
    padding-top: 10%;
    width: 100%;
  }
}

.p-top-about__inner__link ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: -30px;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link ul {
    flex-direction: column;
    margin-bottom: -5%;
  }
}

.p-top-about__inner__link ul li {
  width: 46%;
  max-width: 300px;
  margin-right: 8%;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link ul li {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
    margin-bottom: 5%;
  }
}

.p-top-about__inner__link ul li:nth-child(2n) {
  margin-right: 0;
}

.p-top-about__inner__link ul li a {
  position: relative;
  display: block;
  transition: opacity .3s;
}

.p-top-about__inner__link ul li a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link ul li a {
    display: flex;
    justify-content: space-between;
  }
}

.p-top-about__inner__link ul li a p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link ul li a p {
    margin-top: 0;
    width: 63%;
  }
}

.p-top-about__inner__link ul li a p strong {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link ul li a p strong {
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 3%;
  }
  .p-top-about__inner__link ul li a p strong::after {
    border-top: 1px solid #333;
    border-right: 1px solid #333;
  }
}

.p-top-about__inner__link__img {
  position: relative;
  overflow: hidden;
  height: 200px;
}

@media screen and (max-width: 1179px) {
  .p-top-about__inner__link__img {
    height: 20vw;
  }
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link__img {
    width: 32%;
    height: 30vw;
  }
}

.p-top-about__inner__link__img span {
  position: absolute;
  z-index: 10;
  right: 30px;
  bottom: 20px;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link__img span {
    display: none;
  }
}

.p-top-about__inner__link__img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: auto;
  transition-duration: .5s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link__img img {
    transition: none;
  }
}

.p-top-about__inner__link__img img:hover {
  transform: scale(1.2);
  transition-duration: .5s;
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link__img img:hover {
    transform: scale(1.2);
    transition: none;
  }
}

@media screen and (max-width: 1179px) {
  .p-top-about__inner__link__img img {
    height: 20vw;
  }
}

@media screen and (max-width: 767px) {
  .p-top-about__inner__link__img img {
    height: 30vw;
    border-radius: 4px;
  }
}

.p-top-news {
  padding: 80px 0;
}

@media screen and (max-width: 1279px) {
  .p-top-news {
    padding: 80px 1%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-news {
    padding: 13% 5%;
  }
}

.p-top-news__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1280px) {
  .p-top-news__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-top-news__inner {
    padding: 0;
    flex-direction: column;
  }
}

.p-top-news__inner__ttl {
  width: 21.5%;
  padding-right: 8%;
}

@media screen and (max-width: 1279px) {
  .p-top-news__inner__ttl {
    padding-right: 4%;
  }
}

@media screen and (max-width: 1279px) {
  .p-top-news__inner__ttl.-ir {
    padding-right: 2%;
  }
}

.p-top-news__inner__ttl h2 {
  margin-bottom: 20px;
}

.p-top-news__inner__ttl h2 em {
  margin-top: 2.5%;
}

@media screen and (max-width: 767px) {
  .p-top-news__inner__ttl {
    width: 100%;
    padding-right: 0;
  }
  .p-top-news__inner__ttl h2 {
    margin-bottom: 6%;
  }
}

.p-top-news__inner__link {
  width: 100px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-top-news__inner__link {
    display: none;
  }
}

.p-top-news__inner__link a {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 5px 10px;
}

.p-top-news__inner__container {
  width: 78.5%;
  padding-left: 8%;
  border-left: 1px solid #dedede;
}

@media screen and (max-width: 1279px) {
  .p-top-news__inner__container {
    padding-left: 4%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-news__inner__container {
    width: 100%;
    padding-left: 0;
    border-left: none;
  }
}

.p-top-news__inner__container dl {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-top-news__inner__container dl {
    flex-direction: column;
    border-bottom: 1px dotted #333;
    padding-bottom: 3%;
    margin-bottom: 5%;
  }
}

.p-top-news__inner__container dl:last-of-type {
  margin-bottom: 0;
}

.p-top-news__inner__container dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-top-news__inner__container dl dt {
    width: 100%;
    display: block;
    justify-content: flex-start;
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 2.5%;
  }
}

.p-top-news__inner__container dl dt span {
  color: #fff;
  background: #004da1;
  padding: 2px 5px;
  width: 8rem;
  display: inline-block;
  text-align: center;
  margin-left: 22px;
  border-radius: 3px;
  font-size: 14px;
  font-size: 1.4rem;
}

@media screen and (max-width: 1279px) {
  .p-top-news__inner__container dl dt span {
    margin-left: 1em;
  }
}

.p-top-news__inner__container dl dd {
  flex: 1;
  margin-left: 2.5%;
}

@media screen and (max-width: 767px) {
  .p-top-news__inner__container dl dd {
    flex: unset;
    width: 100%;
    margin-left: 0;
  }
}

.p-top-news__inner__container dl dd a {
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-top-news__inner__container dl dd a:hover {
  text-decoration: underline;
}

.p-top-news__inner__container dl dd a.link-pdf {
  position: relative;
  padding-right: 1em;
  font-feature-settings: "palt";
}

.p-top-news__inner__container dl dd a.link-pdf::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
}

.p-top-news__inner__link-sp {
  width: 64%;
  margin: 8% auto 0;
}

.p-top-news__inner__link-sp a {
  font-size: 18px;
  font-size: 1.8rem;
  padding: 3%;
}

.p-top-maintenance {
  padding: 80px 0;
}

@media screen and (max-width: 1279px) {
  .p-top-maintenance {
    padding: 80px 1%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-maintenance {
    padding: 13% 5%;
  }
}

.p-top-maintenance__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  height: 100%;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1280px) {
  .p-top-maintenance__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-top-maintenance__inner {
    padding: 0;
    flex-direction: column;
  }
}

.p-top-maintenance__inner__ttl {
  padding-right: 8%;
}

@media screen and (max-width: 1279px) {
  .p-top-maintenance__inner__ttl {
    padding-right: 4%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-maintenance__inner__ttl {
    width: 100%;
    padding-right: 0;
  }
}

.p-top-maintenance__inner__ttl h2 {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-top-maintenance__inner__ttl h2 {
    margin-bottom: 6%;
  }
}

.p-top-maintenance__inner__container {
  flex: 1;
}

@media screen and (max-width: 767px) {
  .p-top-maintenance__inner__container {
    width: 100%;
    padding-left: 0;
    border-left: none;
  }
}

.p-top-maintenance__inner__container a {
  max-width: 400px;
}

@media screen and (max-width: 767px) {
  .p-top-maintenance__inner__container a {
    width: 80%;
    padding: 3%;
    margin: 0 auto;
  }
}

.p-top-ir {
  padding: 80px 0;
  position: relative;
}

.p-top-ir::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #f3f4f4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-top-ir {
    padding: 13% 10%;
  }
}

.p-top-ir__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1280px) {
  .p-top-ir__inner {
    padding: 0 10px;
  }
}

.p-top-ir__inner h2 {
  text-align: left;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-top-ir__inner h2 {
    text-align: center;
    margin-bottom: 6%;
  }
}

.p-top-ir__inner h2 em {
  display: inline-block;
  text-align: left;
  margin-top: 0;
  margin-left: 1em;
}

@media screen and (max-width: 767px) {
  .p-top-ir__inner h2 em {
    text-align: center;
    display: block;
    margin-top: 2.5%;
    margin-left: 0;
  }
}

.p-top-ir__inner__link ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-top-ir__inner__link ul {
    flex-direction: column;
    margin-bottom: -10%;
  }
}

.p-top-ir__inner__link ul li {
  width: 23.4375%;
}

@media screen and (max-width: 767px) {
  .p-top-ir__inner__link ul li {
    width: 100%;
    margin-bottom: 10%;
  }
}

.p-top-ir__inner__link ul li a {
  display: block;
  transition: opacity .3s;
}

.p-top-ir__inner__link ul li a:hover {
  opacity: .7;
}

.p-top-ir__inner__link ul li a img {
  width: 100%;
  display: block;
  margin-bottom: 20px;
}

.p-top-ir__inner__link ul li a dl dt {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-top-ir__inner__link ul li a dl dt {
    margin-bottom: 3%;
  }
}

.p-top-ir__inner__link ul li a dl dd {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.p-top-sustainability {
  padding: 120px 0 80px;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .p-top-sustainability {
    padding: 10% 5% 13%;
  }
}

.p-top-sustainability__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1280px) {
  .p-top-sustainability__inner {
    padding: 0 10px;
  }
}

.p-top-sustainability__inner__container {
  width: 100%;
}

.p-top-sustainability__inner__container h2 {
  text-align: left;
  font-weight: bold !important;
}

@media screen and (max-width: 767px) {
  .p-top-sustainability__inner__container h2 {
    text-align: center;
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-top-sustainability__inner__container h2 em {
  text-align: left;
}

@media screen and (max-width: 767px) {
  .p-top-sustainability__inner__container h2 em {
    text-align: center;
  }
}

.p-top-sustainability__inner__container__lead {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  color: #004da1;
  writing-mode: vertical-rl;
  letter-spacing: 0.1em;
  width: auto;
  margin: 0 auto 6.66%;
}

.p-top-sustainability__inner__container__lead span {
  font-weight: bold;
  color: #f3a20b;
}

.p-top-sustainability__inner__container__txt {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 30px 0;
}

@media screen and (max-width: 767px) {
  .p-top-sustainability__inner__container__txt {
    margin: 8% 0;
  }
}

.p-top-sustainability__inner__link {
  width: 240px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-top-sustainability__inner__link {
    width: 64%;
  }
}

.p-top-sustainability__inner__slide {
  position: relative;
}

.p-top-sustainability__inner__slide > div {
  width: 100%;
}

.p-top-sustainability__inner__slide .splide__arrows .splide__arrow {
  background-color: transparent;
  width: 5.2rem;
  height: auto;
  left: -2.5em;
  opacity: 1;
}

@media screen and (max-width: 1024px) {
  .p-top-sustainability__inner__slide .splide__arrows .splide__arrow {
    left: 1%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-top-sustainability__inner__slide .splide__arrows .splide__arrow {
    width: 4.2rem;
    left: -2.5em;
  }
}

.p-top-sustainability__inner__slide .splide__arrows .splide__arrow.splide__arrow--next {
  right: inherit;
  left: calc(100% - 2.5em);
}

@media screen and (max-width: 1024px) {
  .p-top-sustainability__inner__slide .splide__arrows .splide__arrow.splide__arrow--next {
    left: calc(100% - 5em);
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-top-sustainability__inner__slide .splide__arrows .splide__arrow.splide__arrow--next {
    left: calc(100% - 1.5em);
  }
}

.p-page {
  /* others */
  /* 検索結果 */
  /* ページナビ */
  /* サステナビリティ */
}

.p-page-valve {
  position: relative;
  overflow-x: hidden;
}

.p-page-valve::before, .p-page-valve::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  mix-blend-mode: multiply;
  z-index: 0;
  pointer-events: none;
}

.p-page-valve::before {
  background: url("../images/common/bg-valve_left.png") repeat-y left top;
  width: 618px;
  height: 100%;
  z-index: -1;
}

@media screen and (max-width: 767px) {
  .p-page-valve::before {
    background: url("../images/common/bg-valve-sp.png") repeat-y left top;
    width: 84vw;
  }
}

.p-page-valve::after {
  background: url("../images/common/bg-valve_right.png") repeat-y right top;
  left: inherit;
  right: -270px;
  width: 830px;
  height: 100%;
  z-index: -1;
}

@media screen and (max-width: 1180px) {
  .p-page-valve::after {
    display: none;
  }
}

.p-page-mv {
  position: relative;
  width: 100%;
  background: #418ac9 url("../images/page/bg-mv.png") no-repeat center/cover;
  height: 180px;
}

@media screen and (max-width: 767px) {
  .p-page-mv {
    height: 24vw;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-mv {
    height: 30vw;
  }
}

.p-page-mv__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}

@media screen and (max-width: 1280px) {
  .p-page-mv__inner {
    padding: 0 10px;
  }
}

.p-page-mv__ttl {
  color: #fff;
  font-size: 45px;
  font-size: 4.5rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .p-page-mv__ttl {
    font-size: 34px;
    font-size: 3.4rem;
    padding-left: 4%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-mv__ttl {
    font-size: 28px;
    font-size: 2.8rem;
  }
}

.p-page-mv__ttl span {
  font-size: 25px;
  font-size: 2.5rem;
}

@media screen and (max-width: 767px) {
  .p-page-mv__ttl span {
    font-size: 20px;
    font-size: 2rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-mv__ttl span {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-page-mv__ttl .small {
  font-size: 45px;
  font-size: 4.5rem;
}

@media screen and (max-width: 767px) {
  .p-page-mv__ttl .small {
    font-size: 34px;
    font-size: 3.4rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-mv__ttl .small {
    font-size: 19px;
    font-size: 1.9rem;
  }
}

.p-page-news {
  padding: 70px 10px 80px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-page-news {
    padding: 5% 5% 13%;
  }
}

.p-page-news__inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.p-page-news__category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-page-news__category {
    margin-bottom: 10%;
  }
}

.p-page-news__category__all {
  margin-right: 10px;
}

.p-page-news__category__all a {
  display: block;
  color: #fff;
  background: #004da1;
  border-radius: 4px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  padding: 10px 15px;
  transition: opacity .3s;
  box-shadow: 0 2px 0px #e5e5e5;
}

.p-page-news__category__all a:hover {
  opacity: .7;
}

.p-page-news__category__year {
  position: relative;
  overflow: hidden;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  width: 100px;
}

.p-page-news__category__year select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: #f3f5f5;
  border-radius: 4px;
  color: #004da1;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  width: 100%;
  padding: 10px 15px;
  box-shadow: 0 2px 0px #e5e5e5;
  position: relative;
}

.p-page-news__category__year select::-ms-expand {
  display: none;
}

.p-page-news__category__year select:hover {
  background: #004da1;
  color: #fff;
}

@media all and (-ms-high-contrast: none) {
  .p-page-news__category__year select:hover {
    background: #f3f5f5;
    color: #004da1;
  }
}

.p-page-news__category__year select:hover option {
  background: #f3f5f5;
  color: #333;
}

.p-page-news__category__year::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004da1;
  border-right: 1px solid #004da1;
  transform: rotate(135deg);
  right: 20px;
}

.p-page-news__category__year:hover::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

@media all and (-ms-high-contrast: none) {
  .p-page-news__category__year:hover::after {
    border-top: 1px solid #004da1;
    border-right: 1px solid #004da1;
  }
}

.p-page-news__container:nth-of-type(n + 3) {
  display: none;
}

.p-page-news__container__year {
  position: relative;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #004da1;
  display: inline-block;
  border-bottom: 2px dotted #004da1;
  width: auto;
  margin: 0 auto 50px;
  left: 50%;
  transform: translate(-50%, 0);
}

@media screen and (max-width: 767px) {
  .p-page-news__container__year {
    margin-bottom: 10%;
  }
}

.p-page-news__container__year em {
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: bold;
  margin-right: 0.5rem;
  position: relative;
  top: 1px;
}

.p-page-news__container dl {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-news__container dl {
    flex-direction: column;
    border-bottom: 1px dotted #333;
    padding-bottom: 3%;
    margin-bottom: 5%;
  }
}

.p-page-news__container dl:last-of-type {
  margin-bottom: 0;
}

.p-page-news__container dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  width: 25%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
}

@media screen and (max-width: 992px) {
  .p-page-news__container dl dt {
    width: 30%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-news__container dl dt {
    width: 100%;
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 2.5%;
  }
}

.p-page-news__container dl dt span {
  color: #fff;
  background: #004da1;
  padding: 2px 5px;
  width: 8rem;
  display: inline-block;
  text-align: center;
  margin-left: auto;
  border-radius: 3px;
  font-size: 14px;
  font-size: 1.4rem;
  margin-left: auto;
}

@media screen and (max-width: 767px) {
  .p-page-news__container dl dt span {
    margin-left: 1em;
  }
}

.p-page-news__container dl dd {
  width: 72.5%;
  margin-left: 2.5%;
}

@media screen and (max-width: 992px) {
  .p-page-news__container dl dd {
    width: 67.5%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-news__container dl dd {
    width: 100%;
    margin-left: 0;
  }
}

.p-page-news__container dl dd a {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-page-news__container dl dd a:hover {
  text-decoration: underline;
}

.p-page-news__container dl dd a.link-pdf {
  position: relative;
  padding-right: 1em;
  font-feature-settings: "palt";
}

.p-page-news__container dl dd a.link-pdf::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
}

.p-page-news--detail__entry__head__date {
  color: #004da1;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-page-news--detail__entry__head__cate {
  color: #fff;
  background: #004da1;
  padding: 2px 5px;
  width: 8rem;
  display: inline-block;
  text-align: center;
  margin-left: auto;
  border-radius: 3px;
  font-size: 14px;
  font-size: 1.4rem;
  margin-left: 1em;
}

.p-page-news--detail__entry__head__ttl {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  border-bottom: 1px solid #ddd;
  padding-bottom: 20px;
  margin: 20px 0 30px;
  font-feature-settings: "palt";
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
  .p-page-news--detail__entry__head__ttl {
    font-size: 21px;
    font-size: 2.1rem;
    padding-bottom: 4%;
    margin: 5% 0;
  }
}

.p-page-news--detail__entry__body p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 30px;
}

.p-page-news--detail__entry__body p:after {
  content: "";
  display: block;
  clear: both;
}

.p-page-news--detail__entry__body p:last-of-type {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-page-news--detail__entry__body p {
    margin-bottom: 4%;
  }
}

.p-page-news--detail__entry__body a {
  text-decoration: underline;
  color: #004da1;
}

.p-page-news--detail__entry__body ul {
  list-style-type: disc;
  margin: 30px 0 30px 1.7em;
}

@media screen and (max-width: 767px) {
  .p-page-news--detail__entry__body ul {
    margin-top: 5%;
    margin-bottom: 5%;
  }
}

.p-page-news--detail__entry__body ul li {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-page-news--detail__entry__body ol {
  list-style-type: decimal;
  margin: 30px 0 30px 1.5em;
}

@media screen and (max-width: 767px) {
  .p-page-news--detail__entry__body ol {
    margin-top: 5%;
    margin-bottom: 5%;
  }
}

.p-page-news--detail__entry__body ol li {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-page-news--detail__entry__body table tbody tr th,
.p-page-news--detail__entry__body table tbody tr td {
  font-size: 16px;
  font-size: 1.6rem;
  border-width: 1px;
}

.p-page-news--detail__entry__body img {
  width: auto;
  display: block;
  margin-bottom: 5%;
}

.p-page-news--detail__entry__body img.alignleft {
  float: left;
  margin-right: 30px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__body img.alignleft {
    float: none;
    margin: 0 auto 5%;
  }
}

.p-page-news--detail__entry__body img.aligncenter {
  margin: 0 auto 30px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__body img.aligncenter {
    margin-bottom: 5%;
  }
}

.p-page-news--detail__entry__body img.alignright {
  float: right;
  margin-left: 30px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__body img.alignright {
    float: none;
    margin: 0 auto 5%;
  }
}

.p-page-news--detail__entry__body .gallery {
  margin: 30px 0 !important;
}

@media screen and (max-width: 767px) {
  .p-page-news--detail__entry__body .gallery {
    margin: 5% 0 !important;
  }
}

.p-page-news--detail__entry__body .gallery img {
  border: none !important;
}

.p-page-news--detail__entry__body .gallery .gallery-caption {
  font-size: 14px;
  font-size: 1.4rem;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__body .gallery .gallery-item {
    margin-top: 5% !important;
  }
}

.p-page-news--detail__entry__body .gallery.gallery-columns-2 .gallery-item {
  width: 48.4375% !important;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__body .gallery.gallery-columns-2 .gallery-item {
    float: none !important;
    width: 100% !important;
  }
}

.p-page-news--detail__entry__body .gallery.gallery-columns-2 .gallery-item:nth-child(odd) {
  margin-right: 3.125% !important;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__body .gallery.gallery-columns-2 .gallery-item:nth-child(odd) {
    margin-right: 0 !important;
  }
}

.p-page-news--detail__entry__body .gallery.gallery-columns-3 .gallery-item {
  width: 31.25% !important;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__body .gallery.gallery-columns-3 .gallery-item {
    float: none !important;
    width: 100% !important;
  }
}

.p-page-news--detail__entry__body .gallery.gallery-columns-3 .gallery-item:not(:nth-child(3n)) {
  margin-right: 3.125% !important;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__body .gallery.gallery-columns-3 .gallery-item:not(:nth-child(3n)) {
    margin-right: 0 !important;
  }
}

.p-page-news--detail__entry__btn {
  width: 320px;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .p-page-news--detail__entry__btn {
    width: 64%;
    margin-top: 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-news--detail__entry__btn {
    width: 100%;
  }
}

.p-page-others {
  position: relative;
  z-index: 1;
  padding: 70px 10px 100px;
}

@media screen and (max-width: 767px) {
  .p-page-others {
    padding: 10% 5%;
  }
}

.p-page-others__inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

.p-page-others--covid19__intro {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-others--covid19__intro {
    margin-bottom: 10%;
  }
}

.p-page-others--covid19__intro p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-others--covid19__intro p {
    margin-bottom: 4%;
  }
}

.p-page-others--covid19__intro p:last-of-type {
  margin-bottom: 0;
}

.p-page-others--covid19__box {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-others--covid19__box {
    margin-bottom: 10%;
  }
}

.p-page-others--covid19__box:last-of-type {
  margin-bottom: 0;
}

.p-page-others--covid19__box table {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-others--covid19__box table {
    margin-bottom: 5%;
  }
}

.p-page-others--covid19__box table:last-of-type {
  margin-bottom: 0;
}

.p-page-others--privacy h3 {
  font-feature-settings: "palt";
  letter-spacing: 1px;
}

.p-page-others--privacy__intro {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__intro {
    margin-bottom: 10%;
  }
}

.p-page-others--privacy__intro p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__intro p {
    margin-bottom: 4%;
  }
}

.p-page-others--privacy__intro p:last-of-type {
  margin-bottom: 0;
}

.p-page-others--privacy__box:not(:last-of-type) {
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box:not(:last-of-type) {
    margin-bottom: 10%;
  }
}

.p-page-others--privacy__box p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box p {
    margin-bottom: 4%;
  }
}

.p-page-others--privacy__box p:last-of-type {
  margin-bottom: 0;
}

.p-page-others--privacy__box p a {
  color: #418ac9;
  text-decoration: underline;
}

.p-page-others--privacy__box p a:hover {
  text-decoration: none;
}

.p-page-others--privacy__box.privacy01 ol {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box.privacy01 ol {
    margin-bottom: 5%;
  }
}

.p-page-others--privacy__box__contact {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__contact {
    margin-top: 5%;
  }
}

.p-page-others--privacy__box__contact > p:first-of-type {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__contact > p:first-of-type {
    margin-bottom: 4%;
  }
}

.p-page-others--privacy__box__contact a {
  text-decoration: underline;
}

.p-page-others--privacy__box__contact a[href^="tel:"] {
  text-decoration: none;
}

.p-page-others--privacy__box__contact a:hover {
  text-decoration: none;
}

.p-page-others--privacy__box__txt {
  margin-bottom: 30px !important;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__txt {
    margin-bottom: 4% !important;
  }
}

.p-page-others--privacy__box__list {
  margin-bottom: 60px;
}

.p-page-others--privacy__box__list--txt {
  display: none;
  text-align: right;
  font-size: 14px;
  font-size: 1.4rem;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-others--privacy__box__list--txt {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__list {
    margin-bottom: 10%;
  }
}

.p-page-others--privacy__box__list h4 {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__list h4 {
    margin-bottom: 5%;
  }
}

.p-page-others--privacy__box__list dl {
  padding-left: 1em;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__list dl {
    padding-left: 0;
    margin-bottom: 6.66%;
  }
}

.p-page-others--privacy__box__list dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 15px;
  font-feature-settings: "palt";
}

.p-page-others--privacy__box__list dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__list dl dd p {
    margin-bottom: 4%;
  }
}

.p-page-others--privacy__box__list dl dd p:last-of-type {
  margin-bottom: 0;
}

.p-page-others--privacy__box__list__note {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__list__note {
    margin-top: 4%;
  }
}

.p-page-others--privacy__box__list__note ul li ul {
  margin-top: 1em !important;
}

.p-page-others--privacy__box__list__note ul li ul li {
  margin-bottom: 0.5em;
  font-feature-settings: "palt";
}

.p-page-others--privacy__box__list__note ul li p {
  text-indent: 0;
  margin: 0.5em 0;
}

.p-page-others--privacy__box__list__note ul li p:first-child {
  margin-top: 1em;
}

.p-page-others--privacy__box__list__note ul li a {
  color: #418ac9;
  text-decoration: underline;
}

.p-page-others--privacy__box__list__note ul li a:hover {
  text-decoration: none;
}

.p-page-others--privacy__box__list__note ul:last-child {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box__list__note ul:last-child {
    margin-top: 4%;
  }
}

.p-page-others--privacy__box.privacy01 ol {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box.privacy01 ol {
    margin-bottom: 5%;
  }
}

.p-page-others--privacy__box.privacy02 table {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box.privacy02 table {
    margin-top: 5%;
  }
}

.p-page-others--privacy__box.privacy02 p + ul,
.p-page-others--privacy__box.privacy02 p + ol,
.p-page-others--privacy__box.privacy02 p + dl,
.p-page-others--privacy__box.privacy02 ul + p {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy__box.privacy02 p + ul,
  .p-page-others--privacy__box.privacy02 p + ol,
  .p-page-others--privacy__box.privacy02 p + dl,
  .p-page-others--privacy__box.privacy02 ul + p {
    margin-top: 4%;
  }
}

.p-page-others--privacy.guide .guide--box section {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy.guide .guide--box section {
    margin-bottom: 10%;
  }
}

.p-page-others--privacy.guide .guide--box section h4 {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy.guide .guide--box section h4 {
    margin-bottom: 4%;
  }
}

.p-page-others--privacy.guide .guide--box section .c-list--ol.indent li {
  text-indent: -1.5em;
  margin-left: 1.5em;
  font-feature-settings: "palt";
}

.p-page-others--privacy.guide .guide--box section .c-list--ol li a {
  color: #418ac9;
  text-decoration: underline;
  margin-left: 1em;
}

.p-page-others--privacy.guide .guide--box section .c-list--ol li a:hover {
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy.guide .guide--box section .c-list--ol li a {
    display: block;
    margin-left: 0;
    margin-top: 0.5em;
  }
}

.p-page-others--privacy.guide .guide--box section .c-list--ol li ul {
  margin-top: 1em;
}

.p-page-others--privacy.guide .guide--box section .c-list--ol li ul li li {
  margin-bottom: 0.5em;
  text-indent: 0 !important;
  margin-left: 0 !important;
}

@media screen and (max-width: 767px) {
  .p-page-others--privacy.guide .guide--box section .links a {
    display: block;
    margin-top: 0.5em;
    margin-left: 0 !important;
  }
}

.p-page-others--social__note {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-others--social__note {
    margin-top: 4%;
  }
}

.p-page-others--social__note li {
  font-size: 14px;
  font-size: 1.4rem;
  text-indent: -1em;
  padding-left: 1em;
}

.p-page-search--results {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1080px;
  padding: 20px 20px 50px;
  margin: 70px auto;
}

@media screen and (max-width: 767px) {
  .p-page-search--results {
    padding: 5%;
  }
}

@media screen and (max-width: 1080px) {
  .p-page-search--results {
    max-width: 100%;
    width: 90%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-search--results {
    padding: 3% 2% 5%;
    margin: 5% auto 10%;
  }
}

.p-page-menu {
  padding: 60px 10px;
}

@media screen and (max-width: 767px) {
  .p-page-menu {
    padding: 10% 5%;
  }
}

.p-page-menu.company {
  padding-top: 0;
}

.p-page-menu .is-multiline a {
  padding-top: 8px;
  padding-bottom: 8px;
}

@media screen and (max-width: 827px) {
  .p-page-menu .is-multiline02 a {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}

@media screen and (max-width: 827px) {
  .p-page-menu.-ir .is-multiline a {
    padding-top: 8px;
    padding-bottom: 8px;
  }
}

.p-page-menu ul {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-page-menu ul {
    flex-direction: column;
  }
}

.p-page-menu ul li {
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 2%;
}

@media screen and (max-width: 767px) {
  .p-page-menu ul li {
    width: 100%;
    margin-right: 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-menu ul li {
    margin-bottom: 4%;
  }
}

.p-page-menu ul li:nth-child(4n) {
  margin-right: 0;
}

.p-page-menu ul li a {
  position: relative;
  display: block;
  color: #445aa8;
  background: #f4f5f4;
  border-radius: 4px;
  padding: 20px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  transition: opacity .3s;
  box-shadow: 0 2px 0 #e5e5e5;
}

.p-page-menu ul li a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-page-menu ul li a {
    width: 100%;
    padding: 3% 4%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-menu ul li a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-page-menu ul li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #445aa8;
  border-right: 1px solid #445aa8;
  transform: rotate(45deg);
}

.p-page-menu ul li a.current {
  color: #fff;
  background: #445aa8;
  box-shadow: 0 2px 0 #465a94;
  opacity: 1 !important;
}

.p-page-menu.product-menu ul {
  max-width: 660px;
}

.p-page-menu.product-menu ul li {
  width: 32%;
}

@media screen and (max-width: 767px) {
  .p-page-menu.product-menu ul li {
    width: 100%;
  }
}

.p-page-menu.product-menu ul li:nth-child(3n) {
  margin-right: 0;
}

.p-page-menu.product-menu ul li:nth-child(4n) {
  margin-right: 2%;
}

@media screen and (max-width: 767px) {
  .p-page-menu.product-menu ul li:nth-child(4n) {
    margin-right: 0;
  }
}

.p-page-sustainability__top__title {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  padding: 65px 10px;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__title {
    padding-top: 45px;
    padding-bottom: 30px;
  }
}

.p-page-sustainability__top__title h2 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__title h2 {
    font-size: 18px;
    font-size: 1.8rem;
    padding-top: 45px;
    padding-bottom: 30px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__title h2 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-page-sustainability__top__news {
  background: #f3f4f4;
  mix-blend-mode: multiply;
}

.p-page-sustainability__top__news__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-sustainability__top__news__inner {
    padding: 0 10px;
  }
}

.p-page-sustainability__top__news__wrap {
  display: flex;
  align-items: center;
  padding: 36px 0;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap {
    display: block;
  }
}

.p-page-sustainability__top__news__wrap-left {
  width: 280px;
  padding-right: 135px;
}

@media screen and (max-width: 1200px) {
  .p-page-sustainability__top__news__wrap-left {
    padding-right: 80px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap-left {
    width: 100%;
    padding: 0;
  }
}

.p-page-sustainability__top__news__wrap-left h3 {
  font-size: 28px;
  font-size: 2.8rem;
  color: #1d4c9b;
  font-weight: bold;
  margin-bottom: 27px;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap-left h3 {
    margin-bottom: 20px;
    text-align: center;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__news__wrap-left h3 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap-left a {
    display: none;
  }
}

.p-page-sustainability__top__news__wrap-right {
  width: calc(100% - 250px);
  padding: 50px 0;
  padding-left: 113px;
  border-left: #dedede 1px solid;
}

@media screen and (max-width: 1200px) {
  .p-page-sustainability__top__news__wrap-right {
    padding-left: 80px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap-right {
    width: 100%;
    padding: 0;
    border-left: none;
  }
}

.p-page-sustainability__top__news__wrap-right__list--item {
  display: flex;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 2.2;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap-right__list--item {
    display: block;
    padding: 20px 5px;
    border-bottom: 1px dotted #333;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__news__wrap-right__list--item {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875;
  }
}

.p-page-sustainability__top__news__wrap-right__list--item time {
  width: 170px;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap-right__list--item time {
    width: 100%;
  }
}

.p-page-sustainability__top__news__wrap-right__list--item p {
  width: calc(100% - 170px);
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap-right__list--item p {
    width: 100%;
  }
}

.p-page-sustainability__top__news__wrap__btn {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__news__wrap__btn {
    display: block;
    margin: auto;
    width: 350px;
    margin-top: 30px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__news__wrap__btn {
    width: 250px;
  }
}

.p-page-sustainability__top__pickup {
  padding-top: 55px;
  padding-bottom: 70px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__pickup {
    padding-top: 35px;
    padding-bottom: 30px;
  }
}

.p-page-sustainability__top__pickup__inner {
  max-width: 1180px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1200px) {
  .p-page-sustainability__top__pickup__inner {
    padding: 0 10px;
  }
}

.p-page-sustainability__top__pickup__title h3 {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.6;
  color: #1d4c9b;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__pickup__title h3 {
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center;
  }
}

.p-page-sustainability__top__pickup__wrap {
  margin-top: 35px;
}

.p-page-sustainability__top__pickup__items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__pickup__items {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__pickup__items {
    grid-template-columns: repeat(1, 1fr);
    gap: 15px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__pickup__item {
    display: flex;
  }
}

.p-page-sustainability__top__pickup__item--img {
  width: 100%;
  height: 150px;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__pickup__item--img {
    height: 200px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__pickup__item--img {
    height: 100px;
    width: 105px;
    margin-bottom: 0;
  }
}

.p-page-sustainability__top__pickup__item--img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__pickup__item__text {
    height: 100px;
    width: calc(100% - 105px);
    margin-left: 15px;
  }
}

.p-page-sustainability__top__pickup__item__text time {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__pickup__item__text time {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-sustainability__top__pickup__item__text p {
  margin-top: 10px;
  letter-spacing: 0;
  line-height: 1.625;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__pickup__item__text p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-sustainability__top__panels {
  background: #f3f4f4;
  mix-blend-mode: multiply;
  padding: 70px 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__panels {
    padding: 40px 0;
  }
}

.p-page-sustainability__top__panels__inner {
  max-width: 1180px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1200px) {
  .p-page-sustainability__top__panels__inner {
    padding: 0 10px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__panels__wrap-pc {
    display: none;
  }
}

.p-page-sustainability__top__panels__wrap-pc__top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}

.p-page-sustainability__top__panels__wrap-pc__top a {
  width: 45.75%;
}

.p-page-sustainability__top__panels__wrap-pc__middle {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}

.p-page-sustainability__top__panels__wrap-pc__middle a {
  width: 30.5%;
}

.p-page-sustainability__top__panels__wrap-pc__bottom {
  display: flex;
  justify-content: center;
}

.p-page-sustainability__top__panels__wrap-pc__bottom a {
  width: 30.5%;
}

.p-page-sustainability__top__panels__wrap-pc__bottom a:nth-child(2) {
  margin-left: 100px;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__panels__wrap-pc__bottom a:nth-child(2) {
    margin-left: 50px;
  }
}

.p-page-sustainability__top__panels__wrap-sp {
  display: none;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__panels__wrap-sp {
    display: block;
  }
  .p-page-sustainability__top__panels__wrap-sp a {
    display: block;
    margin-top: 20px;
  }
  .p-page-sustainability__top__panels__wrap-sp a:first-child {
    margin-top: 0;
  }
}

.p-page-sustainability__top__toppage-menu {
  padding: 70px 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-sustainability__top__toppage-menu {
    padding-top: 35px;
    padding-bottom: 35px;
  }
}

.p-page-sustainability__top__toppage-menu__inner {
  max-width: 1180px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1200px) {
  .p-page-sustainability__top__toppage-menu__inner {
    padding: 0 10px;
  }
}

.p-page-sustainability__top__toppage-menu__wrap {
  margin: auto;
  max-width: 825px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 50px 100px;
}

@media screen and (max-width: 1000px) {
  .p-page-sustainability__top__toppage-menu__wrap {
    gap: 30px 50px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__toppage-menu__wrap {
    gap: 30px 50px;
  }
}

@media screen and (max-width: 700px) {
  .p-page-sustainability__top__toppage-menu__wrap {
    gap: 20px;
    grid-template-columns: repeat(1, 1fr);
  }
}

.p-page-sustainability__top__toppage-menu__btn {
  width: 360px;
}

@media screen and (max-width: 767px) {
  .p-page-sustainability__top__toppage-menu__btn {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir .is-pc {
    display: none;
  }
}

.p-page-ir .is-tab {
  display: none;
}

@media screen and (max-width: 920px) {
  .p-page-ir .is-tab {
    display: block;
  }
}

.p-page-ir .is-sp {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-page-ir .is-sp {
    display: block;
  }
}

.p-page-ir__top__news__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__top__news__inner {
    padding: 0 10px;
  }
}

.p-page-ir__top__news__wrap {
  display: flex;
  align-items: center;
  padding: 36px 0;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__news__wrap {
    flex-direction: column;
  }
}

.p-page-ir__top__news__wrap-left {
  width: 280px;
  padding-right: 138px;
}

@media screen and (max-width: 1200px) {
  .p-page-ir__top__news__wrap-left {
    padding-right: 80px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__news__wrap-left {
    width: 100%;
    padding: 0;
    display: contents;
  }
}

.p-page-ir__top__news__wrap-left h3 {
  font-size: 34px;
  font-size: 3.4rem;
  color: #1d4c9b;
  font-weight: bold;
  margin-bottom: 27px;
  font-family: "Poppins", sans-serif;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__news__wrap-left h3 {
    margin-bottom: 20px;
    text-align: center;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__news__wrap-left h3 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 0;
  }
}

.p-page-ir__top__news__wrap-right {
  width: calc(100% - 250px);
  padding: 50px 0;
  padding-left: 113px;
  border-left: #dedede 1px solid;
}

@media screen and (max-width: 1200px) {
  .p-page-ir__top__news__wrap-right {
    padding-left: 80px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__news__wrap-right {
    width: 100%;
    padding: 0;
    border-left: none;
  }
}

.p-page-ir__top__news__wrap-right__list--item {
  display: flex;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 2.2;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__news__wrap-right__list--item {
    display: block;
    padding: 20px 5px;
    border-bottom: 1px dotted #333;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__news__wrap-right__list--item {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875;
  }
}

.p-page-ir__top__news__wrap-right__list--item time {
  width: 170px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__news__wrap-right__list--item time {
    width: 100%;
  }
}

.p-page-ir__top__news__wrap-right__list--item p {
  width: calc(100% - 170px);
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__news__wrap-right__list--item p {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__news__wrap__btn {
    display: block;
    margin: auto;
    width: 350px;
    margin-top: 30px;
    order: 5;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__news__wrap__btn {
    width: 250px;
  }
}

.p-page-ir__top__document {
  position: relative;
  padding: 75px 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__document {
    padding-top: 40px;
    padding-bottom: 50px;
  }
}

.p-page-ir__top__document a:hover {
  text-decoration: underline;
}

.p-page-ir__top__document::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  background: #f3f4f4;
  display: block;
  height: 100%;
  width: 100%;
  z-index: -2;
}

.p-page-ir__top__document__inner {
  max-width: 1180px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1200px) {
  .p-page-ir__top__document__inner {
    padding: 0 10px;
  }
}

.p-page-ir__top__document__wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__document__wrap {
    display: block;
  }
}

.p-page-ir__top__document__wrap-left {
  width: 65.8%;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__document__wrap-left {
    width: 100%;
    margin-bottom: 40px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__document__wrap-left {
    margin: auto;
    max-width: 270px;
    margin-bottom: 40px;
  }
}

.p-page-ir__top__document__wrap-left h3 {
  font-size: 34px;
  font-size: 3.4rem;
  color: #1d4c9b;
  font-weight: bold;
  margin-bottom: 27px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__document__wrap-left h3 {
    margin-bottom: 20px;
    text-align: center;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__document__wrap-left h3 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 0;
  }
}

.p-page-ir__top__document__wrap-left__list {
  margin-top: 75px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__document__wrap-left__list {
    margin-top: 30px;
  }
}

.p-page-ir__top__document__wrap-left__item {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  display: flex;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__document__wrap-left__item {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__top__document__wrap-left__item + .p-page-ir__top__document__wrap-left__item {
  margin-top: 30px;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

.p-page-ir__top__document__wrap-left__item time {
  width: 150px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__document__wrap-left__item time {
    width: 100%;
  }
}

.p-page-ir__top__document__wrap-left__item p {
  width: calc(100% - 150px);
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__document__wrap-left__item p {
    width: 100%;
  }
}

.p-page-ir__top__document__wrap__btn {
  max-width: 300px;
  margin-top: 90px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__document__wrap__btn {
    margin: auto;
    margin-top: 50px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__document__wrap__btn {
    width: 215px;
    margin-top: 35px;
  }
}

.p-page-ir__top__document__wrap__btn__text {
  margin-top: 10px;
}

.p-page-ir__top__document__wrap-right {
  width: 33.9%;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__document__wrap-right {
    width: 100%;
  }
}

.p-page-ir__top__document__wrap-right__link {
  margin: auto;
  display: block;
  position: relative;
  text-align: center;
  max-width: 400px;
}

.p-page-ir__top__document__wrap-right__link + .p-page-ir__top__document__wrap-right__link {
  margin-top: 30px;
}

.p-page-ir__top__document__wrap-right__link p {
  position: absolute;
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0;
  line-height: 1.2;
  color: #fff;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (max-width: 1000px) {
  .p-page-ir__top__document__wrap-right__link p {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-page-ir__top__menu {
  padding-top: 80px;
  padding-bottom: 85px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__menu {
    padding: 30px 0;
  }
}

.p-page-ir__top__menu__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__top__menu__inner {
    padding: 0 10px;
  }
}

.p-page-ir__top__menu__wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 180px;
}

@media screen and (max-width: 1400px) {
  .p-page-ir__top__menu__wrap {
    gap: 120px;
  }
}

@media screen and (max-width: 1200px) {
  .p-page-ir__top__menu__wrap {
    gap: 100px;
  }
}

@media screen and (max-width: 1000px) {
  .p-page-ir__top__menu__wrap {
    gap: 70px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__menu__wrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 60px;
    padding: 0 20px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__menu__wrap {
    gap: 40px;
  }
}

.p-page-ir__top__menu__wrap__item + .p-page-ir__top__menu__wrap__item {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__menu__wrap__item + .p-page-ir__top__menu__wrap__item {
    margin-top: 60px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top__menu__wrap__item + .p-page-ir__top__menu__wrap__item {
    margin-top: 40px;
  }
}

.p-page-ir__top__menu__wrap__item h3 {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.42;
  color: #1d4b9b;
}

.p-page-ir__top__menu__wrap__item h3 a {
  color: #1d4b9b;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__menu__wrap__item h3 {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.p-page-ir__top__menu__wrap__item ul li {
  margin-top: 20px;
  padding-left: 1px;
}

.p-page-ir__top__menu__wrap__item ul li a {
  display: block;
  position: relative;
  font-size: 18px;
  font-size: 1.8rem;
  padding-left: 20px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top__menu__wrap__item ul li a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-page-ir__top__menu__wrap__item ul li a::before {
  position: absolute;
  display: inline-block;
  content: "";
  width: 6px;
  height: 6px;
  border-top: 1px solid #004da1;
  border-right: 1px solid #004da1;
  transform: rotate(45deg);
  left: 0;
  top: 10px;
}

.p-page-ir__top__menu__wrap__item ul li a:hover {
  text-decoration: underline;
}

.p-page-ir__news {
  padding-top: 75px;
  padding-bottom: 65px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__news {
    padding-top: 60px;
    padding-bottom: 50px;
  }
}

.p-page-ir__news__inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 15px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__news__inner {
    padding: 0 25px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__news__inner {
    padding: 0 15px;
  }
}

.p-page-ir__news__wrap {
  max-width: 1180px;
  margin: auto;
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__news__wrap {
    padding-left: 0;
    margin-top: 30px;
  }
}

.p-page-ir__news__item {
  font-size: 16px;
  font-size: 1.6rem;
  display: flex;
  margin-bottom: 30px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__news__item {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    margin-bottom: 25px;
  }
}

.p-page-ir__news__item time {
  width: 200px;
  line-height: 1.75;
}

@media screen and (max-width: 767px) {
  .p-page-ir__news__item time {
    width: 150px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__news__item time {
    width: 100%;
  }
}

.p-page-ir__news__item p {
  width: calc(100% - 200px);
  line-height: 1.75;
  font-weight: 300;
}

@media screen and (max-width: 767px) {
  .p-page-ir__news__item p {
    width: calc(100% - 150px);
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__news__item p {
    width: 100%;
  }
}

.p-page-ir__eir-list {
  padding: 0 5%;
  padding-top: 75px;
  padding-bottom: 65px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list {
    padding-left: 5%;
    padding-right: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list {
    padding-top: 60px;
    padding-bottom: 50px;
  }
}

.p-page-ir__eir-list__container {
  max-width: 1080px;
  margin: 0 auto;
  width: 100%;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.16);
  padding: 50px;
  border-radius: 10px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__container {
    padding: 5% 5% 8%;
  }
}

.p-page-ir__eir-list__container + .p-page-ir__eir-list__container {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__container + .p-page-ir__eir-list__container {
    margin-top: 50px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__container + .p-page-ir__eir-list__container {
    margin-top: 50px;
  }
}

.p-page-ir__eir-list__title {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__title {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__title {
    font-size: 20px;
    font-size: 2rem;
  }
}

.p-page-ir__eir-list__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__eir-list__inner {
    padding: 0 10px;
  }
}

.p-page-ir__eir-list__select {
  height: 40px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__select {
    margin-bottom: 20px;
  }
}

.p-page-ir__eir-list__body + .p-page-ir__eir-list__body {
  margin-top: 70px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__body + .p-page-ir__eir-list__body {
    margin-top: 50px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__body + .p-page-ir__eir-list__body {
    margin-top: 45px;
  }
}

.p-page-ir__eir-list__body__title {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 600;
  position: relative;
  border-bottom: 2px solid #e6e6e6;
  margin-bottom: 15px;
  padding-bottom: 1rem;
  padding-left: 1rem;
  color: #004da1;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__body__title {
    margin-bottom: 5%;
  }
}

.p-page-ir__eir-list__body__title::after {
  content: "";
  position: absolute;
  width: 250px;
  height: 2px;
  background: #418ac9;
  left: 0;
  bottom: -1px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__body__title::after {
    width: 33%;
  }
}

.p-page-ir__eir-list__body__subtitle {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.01em;
  line-height: 1;
  margin-top: 30px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__body__subtitle {
    margin-bottom: 0;
  }
}

.p-page-ir__eir-list__body__sub-title {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__body__sub-title {
    font-size: 22px;
    font-size: 2.2rem;
    margin-top: 50px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__body__sub-title {
    font-size: 20px;
    font-size: 2rem;
    margin-top: 45px;
  }
}

.p-page-ir__eir-list__wrap {
  margin: auto;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__wrap {
    margin-top: 0;
  }
}

.p-page-ir__eir-list__item {
  font-size: 16px;
  font-size: 1.6rem;
  display: flex;
  border-bottom: 1px solid #e6e6e6;
  padding: 1.5rem 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__item {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    margin-bottom: 25px;
  }
}

.p-page-ir__eir-list__item time {
  width: 150px;
  line-height: 1.75;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__item time {
    width: 150px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__item time {
    width: 100%;
  }
}

.p-page-ir__eir-list__item p {
  width: calc(100% - 150px);
  line-height: 1.75;
  font-weight: 300;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-list__item p {
    width: calc(100% - 150px);
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-list__item p {
    width: 100%;
  }
}

.p-page-ir__eir-graph {
  margin: auto;
  padding-top: 75px;
  padding-bottom: 65px;
  max-width: 1000px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-graph {
    padding-top: 60px;
    padding-bottom: 50px;
  }
}

.p-page-ir__eir-graph__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__eir-graph__inner {
    padding: 0 10px;
  }
}

.p-page-ir__eir-graph__body + .p-page-ir__eir-graph__body {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-graph__body + .p-page-ir__eir-graph__body {
    margin-top: 70px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-graph__body + .p-page-ir__eir-graph__body {
    margin-top: 60px;
  }
}

.p-page-ir__eir-graph__body__title {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1;
  font-weight: bold;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-graph__body__title {
    font-size: 32px;
    font-size: 3.2rem;
    margin-bottom: 25px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-graph__body__title {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 25px;
  }
}

.p-page-ir__eir-graph__wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 80px 100px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-graph__wrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 60px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__eir-graph__wrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 50px;
  }
}

.p-page-ir__eir-graph__item__title {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.01em;
  line-height: 1;
  color: #004da1;
  margin-bottom: 30px;
  position: relative;
}

.p-page-ir__eir-graph__item__title::after {
  position: absolute;
  content: "";
  width: 280px;
  height: 2px;
  background: #004da1;
  left: 0;
  bottom: -1rem;
}

@media screen and (max-width: 767px) {
  .p-page-ir__eir-graph__item__title::after {
    width: 40%;
  }
}

.p-page-ir__eir-graph__item__subtitle {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.01em;
  line-height: 1;
  margin-bottom: 20px;
}

.p-page-ir__eir-graph__item__graph {
  background: #f4f5f4;
  width: 100%;
  height: 450px;
  margin-top: 20px;
}

.p-page-ir__eir-menu ul {
  max-width: 1050px;
}

.p-page-ir__top-two {
  padding-top: 105px;
  padding-bottom: 110px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top-two {
    padding-top: 70px;
    padding-bottom: 60px;
  }
}

.p-page-ir__top-two__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__top-two__inner {
    padding: 0 10px;
  }
}

.p-page-ir__top-two__wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 67px 18px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top-two__wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 50px 15px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top-two__wrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
  }
}

.p-page-ir__top-two__item {
  display: block;
  background-color: #fff;
  border-radius: 10px;
  padding: 27px 30px 60px 30px;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.15);
  position: relative;
}

.p-page-ir__top-two__item::after {
  position: absolute;
  content: "";
  background: url("../images/ir/top-two/top-two-icon.jpg") center center/contain no-repeat;
  width: 18px;
  height: 18px;
  right: 28px;
  bottom: 18px;
}

.p-page-ir__top-two__item__title {
  padding-bottom: 18px;
  position: relative;
}

.p-page-ir__top-two__item__title::after {
  position: absolute;
  content: "";
  background-color: #707070;
  height: 1px;
  width: 100%;
  bottom: 0;
  left: 0;
}

.p-page-ir__top-two__item__title h2 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.5;
  color: #004da1;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top-two__item__title h2 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-page-ir__top-two__item__text {
  margin-top: 15px;
}

.p-page-ir__top-two__item__text p {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0;
  line-height: 1.875;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top-two__item__text p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__meetings {
  padding-top: 75px;
  padding-bottom: 65px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__meetings {
    padding-top: 60px;
    padding-bottom: 50px;
  }
}

.p-page-ir__meetings__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__meetings__inner {
    padding: 0 10px;
  }
}

.p-page-ir__meetings__wrap {
  max-width: 1080px;
  margin: 0 auto;
  width: 100%;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.16);
  padding: 50px;
  border-radius: 10px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__meetings__wrap {
    padding: 5% 5% 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__meetings__wrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
  }
}

.p-page-ir__meetings__wrap table {
  width: 100%;
}

.p-page-ir__meetings__wrap table th,
.p-page-ir__meetings__wrap table td {
  border-bottom: 1px solid #e6e6e6;
  padding: 1.5rem 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .p-page-ir__meetings__wrap table th,
  .p-page-ir__meetings__wrap table td {
    display: block;
  }
}

.p-page-ir__meetings__wrap table tr:first-child th,
.p-page-ir__meetings__wrap table tr:first-child td {
  padding-top: 0;
}

.p-page-ir__meetings__wrap table th {
  width: 18%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-page-ir__meetings__wrap table th {
    width: 100%;
    border-bottom: none;
    padding: 0;
    padding-top: 4%;
    text-align: left;
  }
}

.p-page-ir__meetings__wrap table td {
  width: 82%;
}

@media screen and (max-width: 767px) {
  .p-page-ir__meetings__wrap table td {
    width: 100%;
  }
  .p-page-ir__meetings__wrap table td br {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__meetings__wrap table tr:first-child td {
    padding-top: 1.5rem;
  }
}

.p-page-ir__meetings__item {
  background-color: gray;
  height: 300px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__meetings__item {
    grid-template: 200px;
  }
}

.p-page-ir__meetings__pdf {
  padding-top: 50px;
  margin-bottom: 50px;
}

.p-page-ir__meetings__pdf__item {
  margin: 20px 0;
}

.p-page-ir__meetings__pdf__item a {
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
  text-decoration: underline;
  padding-right: 1em;
  color: #004da1;
  position: relative;
}

.p-page-ir__meetings__pdf__item a::before {
  content: "■";
  display: inline-block;
  font-size: 90%;
}

.p-page-ir__meetings__pdf__item a::after {
  content: "";
  display: inline-block;
  background: url(../images/common/icon-pdf.svg) no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
}

.p-page-ir__calender {
  padding-top: 80px;
  padding-bottom: 120px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__calender {
    padding-top: 60px;
    padding-bottom: 50px;
  }
}

.p-page-ir__calender__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__calender__inner {
    padding: 0 10px;
  }
}

.p-page-ir__calender__wrap {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 50px;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-page-ir__calender__wrap {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__calender__wrap {
    padding: 5% 5% 8%;
    margin-bottom: 8%;
  }
}

.p-page-ir__calender__wrap:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__calender__wrap h3 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  position: relative;
  border-bottom: 2px solid #e6e6e6;
  margin-bottom: 30px;
  padding-bottom: 1rem;
  padding-left: 1rem;
  color: #004da1;
}

@media screen and (max-width: 767px) {
  .p-page-ir__calender__wrap h3 {
    margin-bottom: 5%;
  }
}

.p-page-ir__calender__wrap h3::after {
  content: "";
  display: block;
  width: 250px;
  height: 2px;
  background: #418ac9;
  position: absolute;
  left: 0;
  bottom: -1px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__calender__wrap h3::after {
    width: 33%;
  }
}

.p-page-ir__calender__wrap table {
  width: 100%;
}

.p-page-ir__calender__wrap table th,
.p-page-ir__calender__wrap table td {
  border-bottom: 1px solid #e6e6e6;
  padding: 1.5rem 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .p-page-ir__calender__wrap table th,
  .p-page-ir__calender__wrap table td {
    display: block;
  }
}

.p-page-ir__calender__wrap table tr:first-child th,
.p-page-ir__calender__wrap table tr:first-child td {
  padding-top: 0;
}

.p-page-ir__calender__wrap table th {
  width: 18%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-page-ir__calender__wrap table th {
    width: 100%;
    border-bottom: none;
    padding: 0;
    padding-top: 4%;
    text-align: left;
  }
}

.p-page-ir__calender__wrap table td {
  width: 82%;
}

@media screen and (max-width: 767px) {
  .p-page-ir__calender__wrap table td {
    width: 100%;
  }
  .p-page-ir__calender__wrap table td br {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__calender__wrap table tr:first-child td {
    padding-top: 1.5rem;
  }
}

.p-page-ir__calender__list + .p-page-ir__calender__list {
  margin-top: 60px;
}

.p-page-ir__top-message {
  padding-top: 80px;
  padding-bottom: 90px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top-message {
    padding-top: 60px;
    padding-bottom: 50px;
  }
}

.p-page-ir__top-message__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__top-message__inner {
    padding: 0 10px;
  }
}

.p-page-ir__top-message__inner h3 {
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  line-height: 1;
  color: #004da1;
}

@media screen and (max-width: 767px) {
  .p-page-ir__top-message__inner h3 {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top-message__inner h3 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-page-ir__top-message__wrap {
  margin-top: 45px;
}

.p-page-ir__top-message__wrap p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2.25;
  letter-spacing: 0.01em;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__top-message__wrap p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__top-message__wrap__img {
  float: right;
  width: 545px;
  margin-left: 60px;
  margin-bottom: 60px;
}

@media screen and (max-width: 1190px) {
  .p-page-ir__top-message__wrap__img {
    width: 450px;
    margin-left: 40px;
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 900px) {
  .p-page-ir__top-message__wrap__img {
    width: 300px;
    margin-left: 40px;
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__top-message__wrap__img {
    margin: 0 auto;
    margin-bottom: 35px;
    float: none;
    width: 100%;
  }
}

.p-page-ir__complimentary {
  position: relative;
  z-index: 1;
  padding: 70px 10px 100px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary {
    padding: 5% 0;
  }
}

.p-page-ir__complimentary::after {
  content: "";
  width: 100%;
  height: 100%;
  background: #f3f4f4;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  display: block;
}

.p-page-ir__complimentary__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-page-ir__complimentary__inner {
    padding: 0 10px;
  }
}

.p-page-ir__complimentary__intro {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__intro {
    margin-bottom: 10%;
  }
}

.p-page-ir__complimentary__intro p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__intro p {
    margin-bottom: 4%;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__complimentary__intro p:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__complimentary__wrap {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 80px 50px 50px;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 60px;
  position: relative;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__wrap {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__wrap {
    padding: 5%;
    margin-bottom: 10%;
  }
}

.p-page-ir__complimentary__wrap h2 {
  color: #004da1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 50px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__wrap h2 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 6.66%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__complimentary__wrap h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-page-ir__complimentary__wrap + .p-page-ir__complimentary__wrap {
  margin-top: 65px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__wrap + .p-page-ir__complimentary__wrap {
    margin-top: 40px;
  }
}

.p-page-ir__complimentary__box + .p-page-ir__complimentary__box {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__box + .p-page-ir__complimentary__box {
    margin-top: 35px;
  }
}

.p-page-ir__complimentary__box h3 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  position: relative;
  border-bottom: 2px solid #e6e6e6;
  margin-bottom: 30px;
  padding-bottom: 1rem;
  padding-left: 1rem;
  color: #004da1;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__box h3 {
    margin-bottom: 5%;
  }
}

.p-page-ir__complimentary__box h3 span {
  font-size: 12px;
  font-size: 1.2rem;
  color: #3d3d3d;
}

.p-page-ir__complimentary__box h3::after {
  content: "";
  display: block;
  width: 250px;
  height: 2px;
  background: #418ac9;
  position: absolute;
  left: 0;
  bottom: -1px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__box h3::after {
    width: 33%;
  }
}

.p-page-ir__complimentary__box h4 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 30px;
  color: #004da1;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__box h4 {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 5%;
  }
}

.p-page-ir__complimentary__item {
  padding-left: 1rem;
}

.p-page-ir__complimentary__item a {
  display: inline-block;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 2;
  color: #418ac9;
  text-decoration: underline;
  padding-right: 24px;
  margin-bottom: 20px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-page-ir__complimentary__item a::after {
  position: absolute;
  content: "";
  background: url(../images/ir/complimentary/link.jpg) center center/contain no-repeat;
  width: 16px;
  height: 13px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.p-page-ir__complimentary__item p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__complimentary__item p:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__complimentary__item p span {
  font-size: 10px;
  font-size: 1rem;
}

.p-page-ir__complimentary__item ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item ul li {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__complimentary__item.-one, .p-page-ir__complimentary__item.-three, .p-page-ir__complimentary__item.-four {
  display: flex;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item.-one, .p-page-ir__complimentary__item.-three, .p-page-ir__complimentary__item.-four {
    display: block;
  }
}

.p-page-ir__complimentary__item.-one {
  justify-content: space-between;
}

.p-page-ir__complimentary__item--summary table {
  table-layout: fixed;
}

.p-page-ir__complimentary__item--summary table thead th:first-child {
  width: 20%;
}

.p-page-ir__complimentary__item--summary table tbody tr:nth-child(even) td {
  background: #fff;
}

.p-page-ir__complimentary__item__note {
  color: #f00;
}

.p-page-ir__complimentary__item__note em {
  font-size: inherit;
  text-decoration: underline;
}

.p-page-ir__complimentary__special {
  border: 2px solid #004da1;
  padding: 20px;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__special {
    padding: 15px;
  }
}

.p-page-ir__complimentary__special h3 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 30px;
  color: #004da1;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__special h3 {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 5%;
  }
}

.p-page-ir__complimentary__special p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__special p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__complimentary__special p span {
  color: #004da1;
}

.p-page-ir__complimentary__special p + p {
  margin-top: 1.8em;
}

.p-page-ir__complimentary__item-one__left {
  width: 42.3%;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__left {
    width: 100%;
  }
}

.p-page-ir__complimentary__item-one__left ul li {
  margin-bottom: 20px;
}

.p-page-ir__complimentary__item-one__left ul li:last-child {
  margin-bottom: 0;
}

.p-page-ir__complimentary__item-one__left ul li p {
  margin-left: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__left ul li p {
    margin-left: 15px;
  }
}

.p-page-ir__complimentary__item-one__left__box + .p-page-ir__complimentary__item-one__left__box {
  margin-top: 45px;
}

.p-page-ir__complimentary__item-one__right {
  width: 52.9%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-end;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__right {
    width: 100%;
    margin-top: 45px;
  }
}

.p-page-ir__complimentary__item-one__right__table {
  width: 100%;
}

.p-page-ir__complimentary__item-one__right__table p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  color: #004da1;
}

.p-page-ir__complimentary__item-one__right__table-body {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__right__table-body {
    overflow-x: scroll;
  }
}

.p-page-ir__complimentary__item-one__right__table table {
  width: 100%;
  border-collapse: collapse;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__right__table table {
    width: 500px;
  }
}

.p-page-ir__complimentary__item-one__right__table table .top {
  border-bottom: #004da1 2px solid;
}

.p-page-ir__complimentary__item-one__right__table table .l-one {
  width: 26.8%;
}

.p-page-ir__complimentary__item-one__right__table table .l-two {
  width: 31.6%;
}

.p-page-ir__complimentary__item-one__right__table table .l-three {
  width: 20.8%;
}

.p-page-ir__complimentary__item-one__right__table table .l-four {
  width: 20.8%;
}

.p-page-ir__complimentary__item-one__right__table table tr th,
.p-page-ir__complimentary__item-one__right__table table tr td {
  padding: 17px 15px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__right__table table tr th,
  .p-page-ir__complimentary__item-one__right__table table tr td {
    padding: 12px 10px;
  }
}

.p-page-ir__complimentary__item-one__right__table table tr th {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.9;
  color: #004da1;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__right__table table tr th {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
}

.p-page-ir__complimentary__item-one__right__table table tr td {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.9;
  border: #e6e6e6 solid 1px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__right__table table tr td {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
}

.p-page-ir__complimentary__item-one__right__table table tr .text-r {
  text-align: right;
}

.p-page-ir__complimentary__item-one__right__img {
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-one__right__img {
    margin-top: 60px;
  }
}

.p-page-ir__complimentary__item-three__left {
  width: 400px;
  margin-left: 15px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-three__left {
    width: 100%;
    margin-left: 0;
  }
}

.p-page-ir__complimentary__item-three__left table {
  width: 100%;
  border-collapse: collapse;
}

.p-page-ir__complimentary__item-three__left table th,
.p-page-ir__complimentary__item-three__left table td {
  width: 33.3%;
  padding: 15px 25px;
  border: #e6e6e6 solid 1px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-three__left table th,
  .p-page-ir__complimentary__item-three__left table td {
    padding: 20px 15px;
  }
}

.p-page-ir__complimentary__item-three__left table th {
  border-right: #004da1 2px solid;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.9;
  color: #004da1;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-three__left table th {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
}

.p-page-ir__complimentary__item-three__left table td {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.9;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-three__left table td {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
}

.p-page-ir__complimentary__item-three__right {
  width: 260px;
  margin-left: 190px;
}

@media screen and (max-width: 1000px) {
  .p-page-ir__complimentary__item-three__right {
    margin-left: 30px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-three__right {
    margin-left: 0;
    margin-top: 40px;
  }
}

.p-page-ir__complimentary__item-four__right {
  width: 600px;
  margin-left: 150px;
}

@media screen and (max-width: 1250px) {
  .p-page-ir__complimentary__item-four__right {
    margin-left: 90px;
  }
}

@media screen and (max-width: 1000px) {
  .p-page-ir__complimentary__item-four__right {
    margin-left: 30px;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-four__right {
    width: 100%;
    margin-left: 0;
    margin-top: 40px;
  }
}

.p-page-ir__complimentary__item-six {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-six {
    margin-top: 40px;
  }
}

.p-page-ir__complimentary__item-six li {
  padding-left: 35px;
  margin-top: 10px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-page-ir__complimentary__item-six li {
    margin-top: 5px;
  }
}

.p-page-ir__complimentary__item-six li:first-child {
  margin-top: 0px;
}

.p-page-ir__complimentary__item-six li::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
}

.p-page-ir__complimentary__item-six li.one::before {
  content: "※1";
}

.p-page-ir__complimentary__item-six li.two::before {
  content: "※2";
}

.p-page-ir__complimentary__item-six li.three::before {
  content: "※3";
}

.p-page-ir__complimentary__item-six li.four::before {
  content: "※4";
}

.p-page-ir__complimentary__item-six li.five::before {
  content: "※5";
}

.p-page-ir__complimentary__item-six li.six::before {
  content: "※6";
}

.p-page-ir__electronic__intro {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__electronic__intro {
    margin-bottom: 10%;
  }
}

.p-page-ir__electronic__intro p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__electronic__intro p {
    margin-bottom: 4%;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__electronic__intro p:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__electronic ul li {
  position: relative;
  padding-left: 25px;
  margin-top: 10px;
}

.p-page-ir__electronic ul li p::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
}

.p-page-ir__electronic ul li.one p::before {
  content: "1.";
}

.p-page-ir__electronic ul li.two p::before {
  content: "2.";
}

.p-page-ir__electronic ul li.three p::before {
  content: "3.";
}

.p-page-ir__m-vision {
  padding: 80px 10px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-vision {
    padding: 10% 5%;
  }
}

.p-page-ir__m-vision::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #f3f4f4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.p-page-ir__m-vision__wrap {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 80px 50px 50px;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 60px;
  position: relative;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-vision__wrap {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-vision__wrap {
    padding: 5%;
    margin-bottom: 10%;
  }
}

.p-page-ir__m-vision__wrap:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__m-vision__wrap__box + .p-page-ir__m-vision__wrap__box {
  margin-top: 65px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-vision__wrap__box + .p-page-ir__m-vision__wrap__box {
    margin-top: 50px;
  }
}

.p-page-ir__m-vision__wrap__box h2 {
  color: #004da1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-vision__wrap__box h2 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 6.66%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__m-vision__wrap__box h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-page-ir__m-vision__wrap__box p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.p-page-ir__m-vision__wrap__box p span {
  font-weight: bold;
}

.p-page-ir__m-vision__wrap__box__link {
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 50px;
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-vision__wrap__box__link {
    margin-top: 30px;
    margin-bottom: 60px;
  }
}

.p-page-ir__m-vision__wrap__box__link a {
  display: block;
}

.p-page-ir__m-vision__wrap__box__link a.link {
  margin-bottom: 25px;
  position: relative;
  color: #004da1;
  text-decoration: underline;
}

.p-page-ir__m-vision__wrap__box__link a.link:hover {
  text-decoration: none;
}

.p-page-ir__m-vision__wrap__box__link a.link::after {
  content: "";
  display: inline-block;
  background: url("../images/ir/m_vision/link-icon.jpg") no-repeat left top/contain;
  width: 16px;
  height: 13px;
  position: relative;
  top: 0.2rem;
}

.p-page-ir__m-vision__wrap__box__link a.pdf {
  position: relative;
  color: #004da1;
  text-decoration: underline;
}

.p-page-ir__m-vision__wrap__box__link a.pdf:hover {
  text-decoration: none;
}

.p-page-ir__m-vision__wrap__box__link a.pdf::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left top/contain;
  width: 26px;
  height: 26px;
  position: relative;
  top: 0.5rem;
}

.p-page-ir__m-vision__wrap__box__img + .p-page-ir__m-vision__wrap__box__img {
  margin-top: 20px;
}

.p-page-ir__m-vision__wrap__box__img02 {
  margin-top: 20px;
}

.p-page-ir__m-vision__wrap__box__img02 + .p-page-ir__m-vision__wrap__box__img02 {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-vision__wrap__box__img02 + .p-page-ir__m-vision__wrap__box__img02 {
    margin-top: 60px;
  }
}

.p-page-ir__m-plan {
  padding: 80px 10px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan {
    padding: 10% 5%;
  }
}

.p-page-ir__m-plan::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #f3f4f4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.p-page-ir__m-plan__wrap {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 80px 50px 50px;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 60px;
  position: relative;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap {
    padding: 5%;
    margin-bottom: 10%;
  }
}

.p-page-ir__m-plan__wrap:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__m-plan__wrap__box h2 {
  color: #004da1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap__box h2 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 6.66%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__m-plan__wrap__box h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-page-ir__m-plan__wrap__box h3 {
  color: #004da1;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 20px;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap__box h3 {
    font-size: 22px;
    font-size: 2.2rem;
    margin-bottom: 6.66%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__m-plan__wrap__box h3 {
    font-size: 20px;
    font-size: 2rem;
  }
}

.p-page-ir__m-plan__wrap__box__bottomh2 {
  margin-top: 70px;
}

.p-page-ir__m-plan__wrap__box p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.p-page-ir__m-plan__wrap__box p span {
  font-weight: bold;
}

.p-page-ir__m-plan__wrap__box__list p {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  line-height: 2;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap__box__list p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-page-ir__m-plan__wrap__box__list p span {
  display: block;
  font-weight: normal;
  padding-left: 15px;
  position: relative;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap__box__list p span {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-page-ir__m-plan__wrap__box__list p span::before {
  position: absolute;
  content: "";
  background: url(../images/ir/m_plan/arrow.svg) center center/contain no-repeat;
  left: 2px;
  top: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 7px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap__box__list p span::before {
    top: 11px;
    transform: translateY(0%);
  }
}

.p-page-ir__m-plan__wrap__box__list p:last-child {
  margin-bottom: 0;
}

.p-page-ir__m-plan__wrap__box__link {
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 30px;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap__box__link {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}

.p-page-ir__m-plan__wrap__box__link a {
  display: block;
}

.p-page-ir__m-plan__wrap__box__link a.link {
  margin-bottom: 25px;
  position: relative;
  color: #004da1;
  text-decoration: underline;
}

.p-page-ir__m-plan__wrap__box__link a.link:hover {
  text-decoration: none;
}

.p-page-ir__m-plan__wrap__box__link a.link::after {
  content: "";
  display: inline-block;
  background: url("../images/ir/m_vision/link-icon.jpg") no-repeat left top/contain;
  width: 16px;
  height: 13px;
  position: relative;
  top: 0.2rem;
}

.p-page-ir__m-plan__wrap__box__link a.pdf {
  position: relative;
  color: #004da1;
  text-decoration: underline;
}

.p-page-ir__m-plan__wrap__box__link a.pdf:hover {
  text-decoration: none;
}

.p-page-ir__m-plan__wrap__box__link a.pdf::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left top/contain;
  width: 26px;
  height: 26px;
  position: relative;
  top: 0.5rem;
}

.p-page-ir__m-plan__wrap__box__img + .p-page-ir__m-plan__wrap__box__img {
  margin-top: 20px;
}

.p-page-ir__m-plan__wrap__box__img02 {
  margin-top: 20px;
}

.p-page-ir__m-plan__wrap__box__img02 + .p-page-ir__m-plan__wrap__box__img02 {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__m-plan__wrap__box__img02 + .p-page-ir__m-plan__wrap__box__img02 {
    margin-top: 60px;
  }
}

.p-page-ir__disclosure-policy {
  position: relative;
  z-index: 1;
  padding: 70px 10px 100px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__disclosure-policy {
    padding: 10% 5%;
  }
}

.p-page-ir__disclosure-policy__inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

.p-page-ir__disclosure-policy__box {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__disclosure-policy__box {
    margin-bottom: 10%;
  }
}

.p-page-ir__disclosure-policy__box p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__disclosure-policy__box p {
    margin-bottom: 4%;
  }
}

.p-page-ir__disclosure-policy__box p:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__public {
  position: relative;
  z-index: 1;
  padding: 70px 10px 100px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__public {
    padding: 10% 5%;
  }
}

.p-page-ir__public__inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

.p-page-ir__public p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__public p {
    margin-bottom: 4%;
  }
}

.p-page-ir__public p:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__public p a {
  color: #418ac9;
  text-decoration: underline;
  position: relative;
}

.p-page-ir__public p a::after {
  position: absolute;
  content: "";
  background: url(../images/ir/m_vision/link-icon.jpg) center center/contain no-repeat;
  width: 20px;
  height: 14px;
  right: -30px;
  top: 52%;
  transform: translateY(-50%);
}

.p-page-ir__public p a:hover {
  text-decoration: none;
}

.p-page-ir__handling-regulations {
  position: relative;
  z-index: 1;
  padding: 70px 10px 100px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__handling-regulations {
    padding: 10% 5%;
  }
}

.p-page-ir__handling-regulations__wrap {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 80px 50px 50px;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 60px;
  position: relative;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .p-page-ir__handling-regulations__wrap {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-page-ir__handling-regulations__wrap {
    padding: 5%;
    margin-bottom: 10%;
  }
}

.p-page-ir__handling-regulations__wrap:last-of-type {
  margin-bottom: 0;
}

.p-page-ir__handling-regulations__wrap h2 {
  color: #004da1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__handling-regulations__wrap h2 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 6.66%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__handling-regulations__wrap h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-page-ir__handling-regulations__wrap p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.p-page-ir__handling-regulations__wrap a {
  display: inline-block;
  position: relative;
  color: #004da1;
  font-size: 16px;
  font-size: 1.6rem;
  text-decoration: underline;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__handling-regulations__wrap a {
    margin-top: 15px;
  }
}

.p-page-ir__handling-regulations__wrap a:hover {
  text-decoration: none;
}

.p-page-ir__handling-regulations__wrap a::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left top/contain;
  width: 26px;
  height: 26px;
  position: relative;
  top: 0.5rem;
}

.p-page-ir__table-vertical {
  width: 100%;
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.p-page-ir__table-vertical::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  display: none;
}

.p-page-ir__table-vertical table {
  width: 100%;
  border-collapse: collapse;
  color: #5f5f5f;
}

@media screen and (max-width: 767px) {
  .p-page-ir__table-vertical table {
    width: 680px;
  }
}

.p-page-ir__table-vertical table th,
.p-page-ir__table-vertical table td {
  border: #e6e6e6 solid 1px;
  font-size: 16px;
  text-align: center;
  padding: 20px 0;
}

.p-page-ir__table-vertical table th:nth-child(2n),
.p-page-ir__table-vertical table td:nth-child(2n) {
  border-left: #cecece 1px solid;
}

@media screen and (max-width: 767px) {
  .p-page-ir__table-vertical table th,
  .p-page-ir__table-vertical table td {
    font-size: 14px;
    padding: 15px 0;
  }
}

.p-page-ir__table-vertical table .top {
  background-color: #eef3f9;
  border-bottom: 1px solid #004da1;
  color: #004da1;
}

.p-page-ir__table-vertical table .top th,
.p-page-ir__table-vertical table .top td {
  font-weight: bold;
}

.p-page-ir__table-vertical table .top0 {
  color: #004da1;
}

.p-page-ir__table-vertical table .top0 th,
.p-page-ir__table-vertical table .top0 td {
  font-weight: bold;
  border: none;
}

.p-page-ir__table-vertical table .glay {
  background-color: rgba(230, 230, 230, 0.5);
}

.p-page-ir__table-beside {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.p-page-ir__table-beside::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  display: none;
}

.p-page-ir__table-beside table th,
.p-page-ir__table-beside table td {
  border: #e6e6e6 solid 1px;
  font-size: 16px;
  text-align: center;
  padding: 20px 0;
}

@media screen and (max-width: 767px) {
  .p-page-ir__table-beside table th,
  .p-page-ir__table-beside table td {
    font-size: 14px;
    padding: 15px 0;
  }
}

.p-page-ir__table-beside table tr:nth-child(2n) {
  border-top: #cecece 1px solid;
  border-bottom: #cecece 1px solid;
}

.p-page-ir__table-beside table th {
  background-color: #eef3f9;
  border-right: 1px solid #004da1;
  color: #004da1;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .p-page-ir__status-shares__table table {
    width: 100%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__status-shares__table table {
    width: 480px;
  }
}

.p-page-ir__status-shares__text p {
  text-indent: 0;
}

@media screen and (max-width: 767px) {
  .p-page-ir__status-shares__text p {
    margin-left: 0;
  }
}

.p-page-ir__status-shares__text span {
  display: block;
  position: relative;
  padding-left: 15px;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__status-shares__text span {
    margin-bottom: 10px;
  }
}

.p-page-ir__status-shares__text span::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
}

.p-page-ir__status-shares__text span.one::before {
  content: "1.";
}

.p-page-ir__status-shares__text span.two::before {
  content: "2.";
}

.p-page-ir__status-shares__text span.three::before {
  content: "3.";
}

.p-page-ir__dividend__table-beside {
  margin-top: 25px;
}

.p-page-ir__dividend__table-beside table th,
.p-page-ir__dividend__table-beside table td {
  width: 50%;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__dividend__table-vertical table {
    width: 480px;
  }
}

.p-page-ir__dividend__table-vertical th {
  width: 33.333333333%;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__debenture__table01 table {
    width: 510px;
  }
}

.p-page-ir__debenture__table01 table .one {
  width: 47.8%;
}

.p-page-ir__debenture__table01 table .two {
  width: 20%;
}

.p-page-ir__debenture__table01 table .three {
  width: 12.4%;
}

.p-page-ir__debenture__table01 table .four {
  width: 19.8%;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__debenture__table02 table {
    width: 590px;
  }
}

.p-page-ir__debenture__table02 table .one {
  width: 42.2%;
}

.p-page-ir__debenture__table02 table .two {
  width: 17.4%;
}

.p-page-ir__debenture__table02 table .three {
  width: 18.9%;
}

.p-page-ir__debenture__table02 table .four {
  width: 21.5%;
}

.p-page-ir__debenture__table03 table {
  width: 100%;
}

.p-page-ir__debenture__table03 table tr {
  width: 50%;
}

.p-page-ir__debenture__pdf a {
  display: inline-block;
  position: relative;
  color: #004da1;
  font-size: 16px;
  font-size: 1.6rem;
  text-decoration: underline;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .p-page-ir__debenture__pdf a {
    margin-top: 15px;
  }
}

.p-page-ir__debenture__pdf a:hover {
  text-decoration: none;
}

.p-page-ir__debenture__pdf a::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left top/contain;
  width: 26px;
  height: 26px;
  position: relative;
  top: 0.5rem;
}

.p-page-ir__debenture__wrap ul {
  margin-top: 8px;
}

.p-page-ir__debenture__wrap ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  padding-left: 15px;
  position: relative;
  margin-bottom: 15px;
}

.p-page-ir__debenture__wrap ul li:last-child {
  margin-bottom: 0;
}

.p-page-ir__debenture__wrap ul li::before {
  position: absolute;
  content: "。";
  top: -5px;
  left: 4px;
}

.p-page-ir__procedure__table {
  margin: 35px 0;
  width: 100%;
  overflow: scroll;
}

@media screen and (max-width: 767px) {
  .p-page-ir__procedure__table table {
    width: 618px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-page-ir__procedure__table table {
    width: 618px;
  }
}

.p-page-ir__procedure__table table th,
.p-page-ir__procedure__table table td {
  vertical-align: middle;
  padding: 20px 25px;
}

.p-page-ir__procedure__table table th {
  width: 30%;
}

.p-page-ir__procedure__table table th span {
  font-size: 14px;
}

.p-page-ir__procedure__table table td {
  width: 70%;
  text-align: left;
}

.p-page-ir__procedure__table table .b-blue {
  border-left: 1px solid #004da1;
}

.p-page-ir__procedure__table p {
  margin-top: 35px;
}

.p-page-ir__procedure__table p:first-child {
  margin-top: 0;
}

.p-page-ir__procedure__table a {
  display: block;
  margin-top: 0;
  margin-left: 17px;
  line-height: 1;
}

.p-page-ir__procedure__table a::before, .p-page-ir__procedure__table a::after {
  display: none;
}

.p-page-maintenance__container dl dt {
  width: 15%;
}

@media screen and (max-width: 767px) {
  .p-page-maintenance__container dl dt {
    width: 100%;
  }
}

.p-page-maintenance__container dl dd {
  width: 82.5%;
}

@media screen and (max-width: 767px) {
  .p-page-maintenance__container dl dd {
    width: 100%;
  }
}

.p-page-maintenance--detail__entry__head__cate {
  width: 10rem;
}

.p-company {
  position: relative;
}

.p-company::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.p-company-about {
  padding: 50px 10px 100px;
}

@media screen and (max-width: 767px) {
  .p-company-about {
    padding: 5% 5% 10%;
  }
}

.p-company-about__inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

.p-company-about__date {
  text-align: right;
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 1rem;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-about__date {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-company-about__container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .p-company-about__container {
    padding: 5%;
  }
}

.p-company-about__container dl {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: nowrap;
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl {
    flex-direction: column;
  }
}

.p-company-about__container dl dt {
  font-weight: bold;
  color: #004DA1;
  border-bottom: 2px solid #418AC9;
  width: 18%;
  padding: 0 1rem 1em;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl dt {
    width: 100%;
    border-bottom: none;
    text-align: left;
    padding: 0 0 1em;
  }
}

.p-company-about__container dl dd {
  border-bottom: 1px solid #E6E6E6;
  width: 82%;
  padding: 0 4rem 1em;
}

@media screen and (max-width: 992px) {
  .p-company-about__container dl dd {
    padding: 0 2rem 1em;
  }
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl dd {
    width: 100%;
    padding: 0 0 1em;
  }
}

.p-company-about__container dl dd table caption {
  color: #004DA1;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 20px;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl dd table caption {
    margin-bottom: 3%;
  }
}

.p-company-about__container dl dd table th, .p-company-about__container dl dd table td {
  border-bottom: 1px dotted #ACACAC;
  padding: 1em 0;
  font-size: 16px;
  font-size: 1.6rem;
  width: 50%;
  text-align: left;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl dd table th, .p-company-about__container dl dd table td {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 992px) {
  .p-company-about__container dl dd table th {
    width: 65%;
  }
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl dd table th {
    width: 100%;
    border-bottom: none;
    padding-bottom: 0;
  }
}

.p-company-about__container dl dd table th span {
  font-weight: bold;
}

.p-company-about__container dl dd table th::before, .p-company-about__container dl dd table th::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -1px;
  width: 10px;
  height: 2px;
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl dd table th::before, .p-company-about__container dl dd table th::after {
    display: none;
  }
}

.p-company-about__container dl dd table th::before {
  background: #418AC9;
  left: 0;
}

.p-company-about__container dl dd table th::after {
  background: #fff;
  left: 10px;
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl dd table td {
    padding-top: .5em;
  }
}

.p-company-about__container dl dd table + table {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .p-company-about__container dl dd table + table {
    margin-top: 10%;
  }
}

.p-company-about__container dl dd table + table tr:last-child th, .p-company-about__container dl dd table + table tr:last-child td {
  border-bottom: none;
}

.p-company-about__container dl dd table + table tr:last-child th::before, .p-company-about__container dl dd table + table tr:last-child th::after, .p-company-about__container dl dd table + table tr:last-child td::before, .p-company-about__container dl dd table + table tr:last-child td::after {
  display: none;
}

.p-company-about__link {
  width: 240px;
  margin-top: 20px;
}

.p-company-about__link a {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

.p-company-about__txt-note {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: .5em;
}

.p-company-message {
  position: relative;
}

.p-company-message::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.p-company-message__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-company-message__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-company-message__inner {
    padding: 0;
  }
}

.p-company-message__mv {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  background: url("../images/company/message/message-img01.png") no-repeat right top;
  height: 355px;
  margin-bottom: 40px;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 992px) {
  .p-company-message__mv {
    flex-direction: column;
    background: none;
    height: inherit;
    padding-top: 5%;
  }
}

.p-company-message__mv h2 {
  color: #004DA1;
  font-size: 40px;
  font-size: 4rem;
  font-weight: bold;
}

.p-company-message__mv h2 br:nth-of-type(1), .p-company-message__mv h2 br:nth-of-type(3) {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-company-message__mv h2 {
    font-size: 30px;
    font-size: 3rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-message__mv h2 {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.p-company-message__mv figure {
  display: none;
}

@media screen and (max-width: 992px) {
  .p-company-message__mv figure {
    display: block;
    width: 55%;
    margin: 3% auto 0;
  }
  .p-company-message__mv figure img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-company-message__mv figure {
    width: 65%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-message__mv figure {
    width: 80%;
  }
}

.p-company-message__container {
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-company-message__container {
    padding: 0 5%;
    margin-bottom: 10%;
  }
}

.p-company-message__container h3 {
  color: #004DA1;
  font-size: 30px;
  font-size: 3rem;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-company-message__container h3 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 4%;
  }
}

.p-company-message__container.message-photo {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-company-message__container.message-photo {
    flex-direction: column;
  }
}

.p-company-message__container.message-photo > div:first-child {
  width: 20.7%;
  max-width: 265px;
}

@media screen and (max-width: 767px) {
  .p-company-message__container.message-photo > div:first-child {
    width: 45%;
    margin: 0 auto 4%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-message__container.message-photo > div:first-child {
    width: 60%;
  }
}

.p-company-message__container.message-photo > div:last-child {
  width: 75%;
}

@media screen and (max-width: 767px) {
  .p-company-message__container.message-photo > div:last-child {
    width: 100%;
  }
}

.p-company-message__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-company-message__box {
    flex-direction: column;
  }
}

.p-company-message__box > div {
  width: 50%;
  padding-left: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-message__box > div {
    width: 100%;
    padding-left: 0;
  }
}

.p-company-message__box > div:first-child {
  padding-left: inherit;
  padding-right: 40px;
  border-right: 1px dotted #707070;
}

@media screen and (max-width: 767px) {
  .p-company-message__box > div:first-child {
    padding-right: 0;
    border-right: none;
  }
}

@media screen and (max-width: 767px) {
  .p-company-message__box > div:not(:first-child) {
    margin-top: 8%;
  }
}

.p-company-message__box > div p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 40px;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-company-message__box > div p {
    margin-bottom: 5%;
  }
}

.p-company-message__box > div p:last-of-type {
  margin-bottom: 0;
}

.p-company-philosophy::after {
  display: none;
}

.p-company-philosophy__statement {
  position: relative;
  padding: 70px 10px 90px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__statement {
    padding: 5% 5% 10%;
  }
}

.p-company-philosophy__statement__inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  background: #197FC0;
  padding: 50px;
  padding-bottom: 0;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__statement__inner {
    padding: 5%;
    padding-bottom: 0;
  }
}

.p-company-philosophy__statement__inner__box {
  background: #fff;
  padding: 60px 0;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__statement__inner__box {
    padding: 5%;
  }
}

.p-company-philosophy__statement__inner__box figure {
  text-align: center;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__statement__inner__box figure {
    margin-bottom: 10%;
  }
  .p-company-philosophy__statement__inner__box figure img {
    width: 100%;
  }
}

.p-company-philosophy__statement__inner__box figure:last-of-type {
  margin-bottom: 0;
}

.p-company-philosophy__statement__inner--logo {
  display: block;
  width: 143px;
  margin: 0 auto;
  padding: 20px 0;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__statement__inner--logo {
    width: 25%;
    padding: 4% 0;
  }
}

.p-company-philosophy__statement__inner--logo img {
  width: 100%;
}

.p-company-philosophy__container-wrap {
  padding: 70px 10px 100px;
  position: relative;
}

.p-company-philosophy__container-wrap::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container-wrap {
    padding: 10% 5%;
  }
}

.p-company-philosophy__container {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 100px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container {
    margin-bottom: 12%;
  }
}

.p-company-philosophy__container:last-child {
  margin-bottom: 0;
}

.p-company-philosophy__container__ttl {
  color: #004DA1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: bold;
  position: relative;
  text-align: center;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__ttl {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-philosophy__container__ttl {
    margin-bottom: 12%;
  }
}

.p-company-philosophy__container__ttl em {
  position: relative;
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  padding-top: 2em;
}

.p-company-philosophy__container__ttl em::after {
  content: "";
  display: block;
  width: 9rem;
  position: absolute;
  top: 0;
  left: 50%;
  margin-top: 1rem;
  margin-left: -4.5rem;
  border-bottom: 3px dotted #034FA2;
}

.p-company-philosophy__container__lead {
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__lead {
    margin-bottom: 6.66%;
  }
}

.p-company-philosophy__container__lead-txt01 {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__lead-txt01 {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 4%;
  }
  .p-company-philosophy__container__lead-txt01 br {
    display: none;
  }
}

.p-company-philosophy__container__lead-txt02 {
  font-size: 14px;
  font-size: 1.4rem;
  color: #AFAFAF;
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__lead-txt02 br {
    display: none;
  }
}

.p-company-philosophy__container__box {
  width: 100%;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__box {
    padding: 5%;
  }
}

.p-company-philosophy__container__box-ttl {
  font-size: 30px;
  font-size: 3rem;
  color: #004DA1;
  border-bottom: 1px solid #E6E6E6;
  padding-bottom: 15px;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__box-ttl {
    font-size: 24px;
    font-size: 2.4rem;
    padding-bottom: 3%;
    margin-bottom: 5%;
  }
}

.p-company-philosophy__container__box-ttl02 {
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__box-ttl02 {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 5%;
  }
}

.p-company-philosophy__container__box p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__box p {
    margin-bottom: 4%;
  }
}

.p-company-philosophy__container__box p:last-of-type {
  margin-bottom: 0;
}

.p-company-philosophy__container__box p + h4 {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__box p + h4 {
    margin-top: 6.66%;
  }
}

.p-company-philosophy__container__guide {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__guide {
    margin-bottom: 5%;
  }
}

.p-company-philosophy__container__guide figure {
  width: 300px;
  margin: 0 auto 30px;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__guide figure {
    width: 50%;
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-philosophy__container__guide figure {
    width: 70%;
  }
}

.p-company-philosophy__container__guide figure img {
  width: 100%;
}

.p-company-philosophy__container__guide__list {
  width: 350px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__guide__list {
    width: 65%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-philosophy__container__guide__list {
    width: 85%;
  }
}

.p-company-philosophy__container__guide__list li {
  margin-bottom: 1rem;
}

.p-company-philosophy__container__guide__list span:first-child {
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: bold;
  margin-right: 1rem;
}

.p-company-philosophy__container__guide__list span:first-child em {
  font-weight: bold;
  color: #418AC9;
}

.p-company-philosophy__container__guide__list span:last-child {
  font-size: 20px;
  font-size: 2rem;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-company-philosophy__container__guide__list span:last-child {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.p-company-group_g::after {
  display: none;
}

.p-company-group_g h2 {
  text-align: center;
  color: #004DA1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-company-group_g h2 {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 5%;
  }
}

.p-company-group_g__link {
  position: absolute;
  width: 230px;
  top: 0;
  right: 0;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__link {
    position: relative;
    margin: 0 auto 5%;
  }
}

.p-company-group_g__link a {
  position: relative;
  display: block;
  background: #fff;
  color: #004DA1;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  box-shadow: 0 1px 0 #E5E5E5;
  border-radius: 4px;
  padding: 10px;
  height: 70px;
  transition: opacity .3s;
}

.p-company-group_g__link a:hover {
  opacity: .7;
}

.p-company-group_g__link a::after {
  content: "";
  display: block;
  position: absolute;
  top: inherit;
  margin-top: 1rem;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004DA1;
  border-right: 1px solid #004DA1;
  transform: rotate(135deg);
  left: 50%;
  margin-left: -3px;
}

.p-company-group_g__wrap {
  position: relative;
  z-index: 1;
}

.p-company-group_g__wrap.layout--wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap.layout--wrap {
    flex-direction: column;
  }
}

.p-company-group_g__wrap.layout--wrap > div {
  width: 46.25%;
  margin-right: 7.5%;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap.layout--wrap > div {
    width: 100%;
    margin-right: 0;
  }
}

.p-company-group_g__wrap.layout--wrap > div:nth-child(2n) {
  margin-right: 0;
}

.p-company-group_g__wrap.layout--wrap .layout--wrap__box {
  width: 100%;
  margin-right: 0;
}

.p-company-group_g__wrap h3 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  position: relative;
  border-bottom: 1px solid #C1C1C1;
  margin-bottom: 40px;
  padding-bottom: 1rem;
  padding-left: 1rem;
  color: #004DA1;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap h3 {
    margin-bottom: 5%;
  }
}

.p-company-group_g__wrap h3::after {
  content: "";
  display: block;
  width: 250px;
  height: 2px;
  background: #418AC9;
  position: absolute;
  left: 0;
  bottom: -1px;
}

.p-company-group_g__wrap__container {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-left: 1em;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container {
    flex-direction: column;
    margin-bottom: 0;
    padding-left: 0;
  }
}

.p-company-group_g__wrap__container__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: nowrap;
  width: 46.25%;
  margin-right: 7.5%;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-company-group_g__wrap__container__box:nth-child(2n) {
  margin-right: 0;
}

.p-company-group_g__wrap__container__box figure {
  width: 30%;
  max-width: 163px;
  margin-left: 5%;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box figure {
    width: 35%;
    max-width: 100%;
  }
}

.p-company-group_g__wrap__container__box figure img {
  width: 100%;
}

.p-company-group_g__wrap__container__box > div {
  width: 65%;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box > div {
    width: 61.5%;
  }
}

.p-company-group_g__wrap__container__box > div dl dt {
  color: #004DA1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.p-company-group_g__wrap__container__box > div dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  font-feature-settings: "palt";
  line-height: 1.8;
  word-break: break-all;
}

.p-company-group_g__wrap__container__box > div dl dd a {
  width: 240px;
  padding: .5em 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box > div dl dd a {
    width: 64%;
    max-width: 240px;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_g__wrap__container__box > div dl dd a {
    width: 100%;
  }
}

.p-company-group_g__wrap__container__box > div dl dd ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  margin-top: 2rem;
}

@media screen and (max-width: 1179px) {
  .p-company-group_g__wrap__container__box > div dl dd ul {
    flex-direction: column;
    align-items: flex-start;
  }
}

.p-company-group_g__wrap__container__box > div dl dd ul li {
  width: 240px;
  margin-right: 1.5rem;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box > div dl dd ul li {
    width: 64%;
    margin-right: 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_g__wrap__container__box > div dl dd ul li {
    width: 100%;
  }
}

.p-company-group_g__wrap__container__box > div dl dd ul li a {
  width: 100%;
  margin-top: 0;
}

.p-company-group_g__wrap__container__box > div dl dd ul li:last-child {
  margin-right: 0;
}

@media screen and (max-width: 1179px) {
  .p-company-group_g__wrap__container__box > div dl dd ul li:last-child {
    margin-top: 20px;
  }
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box > div dl dd ul li:last-child {
    margin-top: 4%;
  }
}

.p-company-group_g__wrap__container__box.layout--nophoto {
  flex-direction: column;
  width: 100%;
  border-bottom: 1px solid #E6E6E6;
  padding-bottom: 25px;
  padding-left: 2rem;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box.layout--nophoto {
    padding-bottom: 4.5%;
    padding-left: 0;
  }
}

.p-company-group_g__wrap__container__box.layout--nophoto > div {
  width: 100%;
}

.p-company-group_g__wrap__container__box.layout--nophoto .undefined {
  padding-left: 50px;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box.layout--nophoto .undefined {
    padding-left: 1em;
  }
}

.p-company-group_g__wrap__container__box.area--100 {
  width: 100%;
}

.p-company-group_g__wrap__container__box.layout--nophoto__txt {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box.layout--nophoto__txt {
    flex-direction: column;
  }
}

.p-company-group_g__wrap__container__box.layout--nophoto__txt > div {
  width: 48%;
  margin-right: 4%;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box.layout--nophoto__txt > div {
    width: 100%;
    margin-right: 0;
  }
}

.p-company-group_g__wrap__container__box.layout--nophoto__txt > div:nth-child(2n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__wrap__container__box.layout--nophoto__txt > div:nth-child(2n) {
    margin-top: 8%;
  }
}

.p-company-group_g__wrap__container__box.no-photo > div {
  width: 100%;
}

.p-company-group_g__wrap__container__box.no-photo .layout--nophoto__btn {
  display: block;
}

.p-company-group_g__wrap__container__box.no-photo .layout--nophoto__btn > li:not(:first-child) {
  margin-top: 10px !important;
}

.p-company-group_g__wrap__link {
  margin-top: 2rem;
}

.p-company-group_g__wrap__link a {
  color: #004DA1;
  font-size: 16px;
  font-size: 1.6rem;
  text-decoration: underline;
}

.p-company-group_g__wrap__link a:hover {
  text-decoration: none;
}

.p-company-group_g__wrap__link a::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-external_blue.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  margin-top: -4px;
  position: relative;
  margin-left: .5rem;
}

.p-company-group_g__domestic {
  position: relative;
  padding: 0 10px;
  padding-top: 70px;
}

.p-company-group_g__domestic::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__domestic {
    padding: 10% 5% 0;
  }
}

.p-company-group_g__domestic__inner {
  position: relative;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.p-company-group_g__overseas {
  padding: 100px 10px 70px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__overseas {
    padding: 10% 5% 8%;
  }
}

.p-company-group_g__overseas__inner {
  position: relative;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.p-company-group_g__overseas__area {
  width: 78%;
  max-width: 937px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-company-group_g__overseas__area {
    width: 100%;
  }
}

.p-company-group_g__overseas__area img {
  width: 100%;
}

.p-company-group_s::after {
  display: none;
}

.p-company-group_s h2 {
  color: #004DA1;
  text-align: center;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s h2 {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 5%;
  }
}

.p-company-group_s__home {
  position: relative;
  padding: 70px 10px 40px;
}

.p-company-group_s__home::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__home {
    padding: 8% 5%;
  }
}

.p-company-group_s__home__container {
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__home__container {
    width: 65%;
    max-width: 100%;
    flex-direction: column;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_s__home__container {
    width: 100%;
  }
}

.p-company-group_s__home__container figure {
  width: 54%;
  margin-right: 3.5%;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__home__container figure {
    width: 75%;
    margin: 0 auto 5%;
  }
}

.p-company-group_s__home__container figure img {
  width: 100%;
  max-width: 300px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__home__container figure img {
    max-width: 100%;
  }
}

.p-company-group_s__home__container > div {
  width: 42.5%;
  max-width: 240px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__home__container > div {
    width: 100%;
    max-width: 100%;
  }
}

.p-company-group_s__home__container > div p {
  font-size: 16px;
  font-size: 1.6rem;
  font-feature-settings: "palt";
  white-space: nowrap;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__home__container > div p {
    text-align: center;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_s__home__container > div p {
    padding: 0 2%;
    text-align: left;
  }
}

.p-company-group_s__home__container > div a {
  width: 100%;
  padding: .5em 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__home__container > div a {
    width: 64%;
    margin: 2rem auto 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_s__home__container > div a {
    width: 100%;
  }
}

.p-company-group_s__area {
  padding: 80px 10px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__area {
    padding: 10% 5%;
  }
}

.p-company-group_s__area__inner {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

.p-company-group_s__area__container h3 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  position: relative;
  border-bottom: 1px solid #C1C1C1;
  margin-bottom: 40px;
  padding-bottom: 1rem;
  padding-left: 1rem;
  color: #004DA1;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__area__container h3 {
    margin-bottom: 5%;
  }
}

.p-company-group_s__area__container h3::after {
  content: "";
  display: block;
  width: 250px;
  height: 2px;
  background: #418AC9;
  position: absolute;
  left: 0;
  bottom: -1px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__area__container h3::after {
    width: 33%;
  }
}

.p-company-group_s__area__container__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  border-bottom: 1px solid #E6E6E6;
  padding-bottom: 20px;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__area__container__box {
    flex-direction: column;
    padding-bottom: 4%;
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_s__area__container__box {
    padding-bottom: 5%;
    margin-bottom: 6%;
  }
}

.p-company-group_s__area__container__box dl {
  width: 74%;
  font-size: 16px;
  font-size: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__area__container__box dl {
    width: 100%;
    flex-direction: column;
  }
}

.p-company-group_s__area__container__box dl dt {
  width: 25%;
  font-weight: bold;
  padding-left: 3rem;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__area__container__box dl dt {
    width: 100%;
    padding-left: 0;
    margin-bottom: 2rem;
  }
  .p-company-group_s__area__container__box dl dt br {
    display: none;
  }
}

.p-company-group_s__area__container__box dl dd {
  width: 65%;
  margin-left: 10%;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__area__container__box dl dd {
    width: 100%;
    margin-left: 0;
  }
}

.p-company-group_s__area__container__box dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 1rem;
}

.p-company-group_s__area__container__box dl dd ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

.p-company-group_s__area__container__box dl dd ul li {
  margin-right: 4rem;
}

.p-company-group_s__area__container__box dl dd ul li:last-child {
  margin-right: 0;
}

.p-company-group_s__area__container__box > div {
  width: 26%;
  align-self: flex-end;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__area__container__box > div {
    width: 240px;
    margin-top: 5%;
    align-self: flex-start;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_s__area__container__box > div {
    width: 64%;
  }
}

.p-company-group_s__area__container__box > div a {
  padding: .5em 1rem;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-company-group_s__factory {
  padding: 70px 10px;
  position: relative;
}

.p-company-group_s__factory::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__factory {
    padding: 10% 5%;
  }
}

.p-company-group_s__factory__inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.p-company-group_s__factory__container {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__factory__container {
    flex-direction: column;
    margin-bottom: 0;
  }
}

.p-company-group_s__factory__container__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: nowrap;
  width: 46%;
  margin-right: 8%;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__factory__container__box {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-company-group_s__factory__container__box:nth-child(2n) {
  margin-right: 0;
}

.p-company-group_s__factory__container__box figure {
  width: 42%;
  max-width: 200px;
  margin-right: 4%;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__factory__container__box figure {
    width: 35%;
    max-width: 100%;
  }
}

.p-company-group_s__factory__container__box figure img {
  width: 100%;
}

.p-company-group_s__factory__container__box > div {
  width: 54%;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__factory__container__box > div {
    width: 61.5%;
  }
}

.p-company-group_s__factory__container__box > div dl dt {
  color: #004DA1;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.p-company-group_s__factory__container__box > div dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  font-feature-settings: "palt";
  line-height: 1.8;
  word-break: break-all;
}

.p-company-group_s__factory__container__box > div dl dd a {
  width: 100%;
  padding: .5em 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__factory__container__box > div dl dd a {
    width: 64%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_s__factory__container__box > div dl dd a {
    width: 100%;
  }
}

.p-company-group_s__overseas {
  position: relative;
  padding: 100px 0;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__overseas {
    padding: 10% 5%;
  }
}

.p-company-group_s__overseas__inner {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

.p-company-group_s__overseas__container {
  position: relative;
  border-top: 2px solid #E6E6E6;
  padding-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__overseas__container {
    padding-top: 4%;
  }
}

.p-company-group_s__overseas__container::after {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  left: 0;
  background: #418AC9;
  width: 250px;
  height: 2px;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__overseas__container::after {
    width: 33%;
  }
}

.p-company-group_s__overseas__container dl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  border-bottom: 1px solid #E6E6E6;
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__overseas__container dl {
    flex-direction: column;
  }
}

.p-company-group_s__overseas__container dl:last-child {
  margin-bottom: 0;
}

.p-company-group_s__overseas__container dl dt {
  font-size: 14px;
  font-size: 1.4rem;
  width: 25%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__overseas__container dl dt {
    width: 100%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_s__overseas__container dl dt {
    text-align: left;
  }
}

.p-company-group_s__overseas__container dl dt span, .p-company-group_s__overseas__container dl dt em {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  display: block;
}

.p-company-group_s__overseas__container dl dt span {
  margin-bottom: 1rem;
}

.p-company-group_s__overseas__container dl dd {
  width: 65%;
  padding: 0 2rem;
}

@media screen and (max-width: 767px) {
  .p-company-group_s__overseas__container dl dd {
    width: 100%;
    margin-top: 4%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-group_s__overseas__container dl dd {
    padding: 0;
  }
}

.p-company-group_s__overseas__container dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-company-history::after {
  display: none;
}

.p-company-history h2 {
  font-size: 42px;
  font-size: 4.2rem;
  font-weight: 700;
  text-align: center;
  color: #004DA1;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-company-history h2 {
    font-size: 34px;
    font-size: 3.4rem;
    margin-bottom: 6.66%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-history h2 {
    font-size: 28px;
    font-size: 2.8rem;
  }
}

.p-company-history__intro {
  padding: 70px 10px;
}

@media screen and (max-width: 767px) {
  .p-company-history__intro {
    padding: 10% 5%;
  }
}

.p-company-history__intro__inner {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.p-company-history__intro__inner > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-company-history__intro__inner > div {
    flex-direction: column;
  }
}

.p-company-history__intro__inner > div p {
  font-size: 16px;
  font-size: 1.6rem;
  width: 48%;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-company-history__intro__inner > div p {
    order: 2;
    width: 100%;
  }
}

.p-company-history__intro__inner > div figure {
  width: 48%;
  max-width: 570px;
}

@media screen and (max-width: 767px) {
  .p-company-history__intro__inner > div figure {
    order: 1;
    width: 65%;
    margin: 0 auto 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-history__intro__inner > div figure {
    width: 80%;
  }
}

.p-company-history__intro__inner > div figure img {
  width: 100%;
}

.p-company-history__movie {
  padding-top: 60px;
  position: relative;
}

.p-company-history__movie::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-company-history__movie {
    padding: 8% 4% 0;
  }
}

.p-company-history__movie h2 {
  color: #004DA1;
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-company-history__movie h2 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 4%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-history__movie h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-company-history__movie__box {
  width: 100%;
  max-width: 670px;
  margin: 0 auto;
}

.p-company-history__movie__box a {
  transition: opacity .3s;
}

.p-company-history__movie__box a:hover {
  opacity: .7;
}

.p-company-history__timeline {
  padding: 60px 10px 100px;
  position: relative;
}

.p-company-history__timeline::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline {
    padding: 10% 5%;
  }
}

.p-company-history__timeline___container {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto 50px;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline___container {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline___container {
    padding: 5% 5% 8%;
    margin-bottom: 8%;
  }
}

.p-company-history__timeline___container:last-of-type {
  margin-bottom: 0;
}

.p-company-history__timeline___container h3 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  position: relative;
  border-bottom: 2px solid #E6E6E6;
  margin-bottom: 30px;
  padding-bottom: 1rem;
  padding-left: 1rem;
  color: #004DA1;
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline___container h3 {
    margin-bottom: 5%;
  }
}

.p-company-history__timeline___container h3::after {
  content: "";
  display: block;
  width: 250px;
  height: 2px;
  background: #418AC9;
  position: absolute;
  left: 0;
  bottom: -1px;
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline___container h3::after {
    width: 33%;
  }
}

.p-company-history__timeline___container table {
  width: 100%;
}

.p-company-history__timeline___container table th, .p-company-history__timeline___container table td {
  border-bottom: 1px solid #E6E6E6;
  padding: 1.5rem 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline___container table th, .p-company-history__timeline___container table td {
    display: block;
  }
}

.p-company-history__timeline___container table tr:first-child th, .p-company-history__timeline___container table tr:first-child td {
  padding-top: 0;
}

.p-company-history__timeline___container table th {
  width: 18%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline___container table th {
    width: 100%;
    border-bottom: none;
    padding: 0;
    padding-top: 4%;
    text-align: left;
  }
}

.p-company-history__timeline___container table td {
  width: 82%;
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline___container table td {
    width: 100%;
  }
  .p-company-history__timeline___container table td br {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-company-history__timeline___container table tr:first-child td {
    padding-top: 1.5rem;
  }
}

.p-company-history__note {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-history__note {
    margin-top: 5%;
  }
}

.p-company-ad {
  position: relative;
  padding: 70px 10px;
}

.p-company-ad::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-company-ad {
    padding: 8% 5% 10%;
  }
}

.p-company-ad__wrap {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

.p-company-ad__container {
  position: relative;
  z-index: 1;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-company-ad__container {
    margin-bottom: 8%;
  }
}

.p-company-ad__container:last-of-type {
  margin-bottom: 0;
}

.p-company-ad__container h3 {
  position: relative;
  font-size: 20px;
  font-size: 2rem;
  margin-bottom: 30px;
  color: #004DA1;
}

@media screen and (max-width: 767px) {
  .p-company-ad__container h3 {
    margin-bottom: 6%;
  }
}

.p-company-ad__container h3::after {
  content: "";
  display: block;
  width: 280px;
  height: 2px;
  background: #418AC9;
  position: absolute;
  left: 0;
  bottom: -1rem;
}

@media screen and (max-width: 767px) {
  .p-company-ad__container h3::after {
    width: 40%;
  }
}

.p-company-ad__container h3 + p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-company-ad__container h3 + p {
    margin-bottom: 4%;
  }
}

.p-company-ad__container h3 + ul {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-ad__container h3 + ul {
    margin-top: 6%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-ad__container h3 + ul {
    margin-top: 8%;
  }
}

.p-company-ad__container__photo {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-bottom: -3.2%;
}

.p-company-ad__container__photo li {
  /*width: 31.2%;*/
  width: 48.4%;
  margin-right: 3.2%;
  margin-bottom: 3.2%;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-ad__container__photo li {
    width: 48%;
    margin-right: 4%;
  }
  .p-company-ad__container__photo li:nth-child(2n) {
    margin-right: 0;
  }
}

.p-company-ad__container__photo li:nth-child(3n) {
  margin-right: 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-ad__container__photo li:nth-child(3n) {
    margin-right: 4%;
  }
}

.p-company-ad__container__photo li:nth-child(even) {
  margin-right: 0;
}

.p-company-ad__container__photo li img {
  width: 100%;
}

.p-company-report {
  padding: 0;
}

.p-company-report::after {
  display: none;
}

.p-company-report h2 {
  color: #004DA1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-report h2 {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-report h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-company-report__wrap {
  position: relative;
  padding-top: 80px;
}

@media screen and (max-width: 767px) {
  .p-company-report__wrap {
    padding-top: 10%;
  }
}

.p-company-report__wrap::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.p-company-report__wrap .inner {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-company-report__wrap .inner {
    padding: 0 5% 10%;
  }
}

.p-company-report__container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 40px 60px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-company-report__container {
    padding: 5%;
  }
}

.p-company-report__container__intro {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__intro {
    flex-direction: column;
    margin-bottom: 8%;
  }
}

.p-company-report__container__intro figure {
  width: 20.625%;
  margin-right: 4.375%;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__intro figure {
    width: 30%;
    margin-right: 0;
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-report__container__intro figure {
    width: 45%;
  }
}

.p-company-report__container__intro > div {
  width: 75%;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__intro > div {
    width: 100%;
  }
}

.p-company-report__container__intro > div p {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__intro > div p {
    margin-bottom: 4%;
  }
}

.p-company-report__container__intro > div ul li:not(:last-child) {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__intro > div ul li:not(:last-child) {
    margin-bottom: 4%;
  }
}

.p-company-report__container__intro > div ul a {
  display: inline-block;
  padding: 1rem 5rem 1rem 2rem;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-report__container__intro > div ul a {
    text-align: left;
  }
}

.p-company-report__container__intro > div ul a span {
  font-size: 13px;
  font-size: 1.3rem;
}

.p-company-report__container__box {
  padding-bottom: 20px;
  border-bottom: 1px dotted #999;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__box {
    padding-bottom: 4%;
    margin-bottom: 4%;
  }
}

.p-company-report__container__box .link--pdf__txt {
  position: relative;
  color: #004DA1;
  font-size: 16px;
  font-size: 1.6rem;
  text-decoration: underline;
}

.p-company-report__container__box .link--pdf__txt:hover {
  text-decoration: none;
}

.p-company-report__container__box .link--pdf__txt::before {
  content: "■";
  display: inline-block;
  font-size: 90%;
}

.p-company-report__container__box .link--pdf__txt::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left top/contain;
  width: 26px;
  height: 26px;
  position: relative;
  top: .5rem;
}

.p-company-report__container__box__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  padding-left: 8%;
  margin-top: 20px;
  width: 82.5%;
}

@media screen and (max-width: 992px) {
  .p-company-report__container__box__list {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-company-report__container__box__list {
    flex-direction: column;
    padding-left: 0;
    margin-top: 4%;
  }
}

.p-company-report__container__box__list > ul {
  width: 49%;
  margin-right: 2%;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__box__list > ul {
    width: 100%;
    margin-right: 0;
  }
}

.p-company-report__container__box__list > ul:nth-child(2n) {
  margin-right: 0;
}

.p-company-report__container__box__list > ul > li {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: .5rem;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__box__list > ul > li {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.p-company-report__container__box__list > ul > li ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  padding-left: 1em;
  margin: 1em 0;
  width: 200%;
  white-space: nowrap;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__box__list > ul > li ul {
    flex-direction: column;
    width: 100%;
  }
}

.p-company-report__container__box__list > ul > li ul li {
  font-size: 15px;
  font-size: 1.5rem;
  width: 48%;
  margin-right: 4%;
}

.p-company-report__container__box__list > ul > li ul li:nth-child(2n) {
  margin-right: 0;
}

.p-company-report__container__note {
  font-size: 15px;
  font-size: 1.5rem;
  text-indent: -1em;
  margin-left: 1em;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-report__container__note {
    margin-top: 5%;
  }
}

.p-company-report__number {
  padding: 70px 10px 80px;
}

@media screen and (max-width: 767px) {
  .p-company-report__number {
    padding: 10% 5%;
  }
}

.p-company-report__number ul {
  width: 100%;
  max-width: 420px;
  margin: 0 auto -20px;
}

@media screen and (max-width: 767px) {
  .p-company-report__number ul {
    margin: 0 auto -4%;
  }
}

.p-company-report__number ul li {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-company-report__number ul li {
    margin-bottom: 4%;
  }
}

.p-company-report__number ul li a {
  display: inline-block;
  padding: 1rem 5rem 1rem 2rem;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}

.p-company-report__number ul li a span {
  font-size: 13px;
  font-size: 1.3rem;
}

.p-company-inquiry {
  padding: 60px 10px 90px;
}

@media screen and (max-width: 767px) {
  .p-company-inquiry {
    padding: 10% 5%;
  }
}

.p-company-inquiry__txt {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: center;
  margin-bottom: 40px;
}

.p-company-inquiry__txt a {
  color: #004DA1;
  text-decoration: underline;
}

.p-company-inquiry__txt a:hover {
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .p-company-inquiry__txt {
    text-align: left;
    margin-bottom: 8%;
  }
}

.p-company-inquiry h2 {
  font-size: 42px;
  font-size: 4.2rem;
  font-weight: bold;
  color: #004DA1;
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-company-inquiry h2 {
    font-size: 32px;
    font-size: 3.2rem;
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-inquiry h2 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 6%;
  }
}

.p-company-inquiry h2 br {
  display: none;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-inquiry h2 br {
    display: block;
  }
}

.p-company-inquiry__links {
  width: 480px;
  margin: 0 auto 50px;
}

@media screen and (max-width: 767px) {
  .p-company-inquiry__links {
    width: 100%;
    margin-bottom: 6%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-inquiry__links {
    margin-bottom: 8%;
  }
}

.p-company-inquiry__links li {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-company-inquiry__links li {
    margin-bottom: 3%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-inquiry__links li {
    margin-bottom: 4%;
  }
}

.p-company-inquiry__links li a {
  position: relative;
  text-decoration: underline;
  color: #004DA1;
  font-size: 16px;
  font-size: 1.6rem;
}

.p-company-inquiry__links li a::before {
  content: "■";
  display: inline-block;
  position: relative;
  top: 2px;
  margin-right: 3px;
  font-size: 90%;
}

.p-company-inquiry__links li a:hover {
  text-decoration: none;
}

.p-company-inquiry__container {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-company-inquiry__container {
    padding: 5%;
  }
}

.p-company-inquiry__container__message {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-company-inquiry__container__btn {
  width: 290px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .p-company-inquiry__container__btn {
    width: 64%;
    margin-top: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-company-inquiry__container__btn {
    width: 80%;
  }
}

.p-who {
  position: relative;
}

.p-who-mv {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 482px;
  background: url("../images/who/who-bg01.jpg") no-repeat right center, url("../images/who/who-bg02.jpg") repeat left top;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0 10px;
}

@media screen and (max-width: 1280px) {
  .p-who-mv {
    background: url("../images/who/who-bg01.jpg") no-repeat 20% center;
  }
}

@media screen and (max-width: 1080px) {
  .p-who-mv {
    background: url("../images/who/who-bg03.jpg") no-repeat right center/cover;
  }
}

@media screen and (max-width: 767px) {
  .p-who-mv {
    display: block;
    padding: 0;
    height: inherit;
    background: none;
  }
}

.p-who-mv__inner {
  position: relative;
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-who-mv__inner {
    background: url("../images/who/who-mv-img01_sp.jpg") no-repeat right center/cover;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    height: 60vw;
    padding: 0 5%;
  }
}

.p-who-mv__inner h2 {
  color: #fff;
  font-size: 42px;
  font-size: 4.2rem;
  font-weight: 700;
  margin-bottom: 30px;
}

@media screen and (max-width: 992px) {
  .p-who-mv__inner h2 {
    font-size: 36px;
    font-size: 3.6rem;
  }
}

@media screen and (max-width: 767px) {
  .p-who-mv__inner h2 {
    display: none;
  }
}

.p-who-mv__inner p {
  color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2;
}

@media screen and (max-width: 992px) {
  .p-who-mv__inner p {
    font-size: 16px;
    font-size: 1.6rem;
    width: 60%;
  }
  .p-who-mv__inner p br {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-who-mv__inner p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who-mv__inner p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-who-mv__ttl-sp {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-who-mv__ttl-sp {
    display: block;
    color: #004DA1;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 700;
    text-align: center;
    padding: 2.5% 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-who-mv__ttl-sp {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.p-who__wrap {
  padding: 70px 10px 90px;
}

@media screen and (max-width: 1366px) {
  .p-who__wrap {
    mix-blend-mode: normal;
  }
}

@media screen and (max-width: 767px) {
  .p-who__wrap {
    padding: 10% 5%;
  }
}

.p-who__container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 50px 10px 70px;
}

@media screen and (max-width: 767px) {
  .p-who__container {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-who__container {
    padding: 6% 2.5% 8%;
  }
}

.p-who__container__inner {
  width: 100%;
  max-width: 1020px;
  margin: 0 auto;
}

.p-who__container__inner h2 {
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: 700;
  color: #004DA1;
  margin-bottom: 50px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-who__container__inner h2 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 6.66%;
  }
}

.p-who__container__inner h2 em {
  font-size: 62px;
  font-size: 6.2rem;
  font-weight: bold;
  color: #D62626;
  position: relative;
  top: .05em;
}

@media screen and (max-width: 767px) {
  .p-who__container__inner h2 em {
    font-size: 52px;
    font-size: 5.2rem;
  }
}

.p-who__container__inner h2 span {
  font-size: 42px;
  font-size: 4.2rem;
  font-weight: 900;
}

@media screen and (max-width: 767px) {
  .p-who__container__inner h2 span {
    font-size: 32px;
    font-size: 3.2rem;
  }
}

.p-who__container-box {
  position: relative;
  background: rgba(243, 243, 243, 0.4);
  border-radius: 10px;
  padding: 50px;
  margin-bottom: 50px;
}

@media screen and (max-width: 992px) {
  .p-who__container-box {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-who__container-box {
    margin-bottom: 8%;
  }
}

.p-who__container-box:last-of-type {
  margin-bottom: 0;
}

.p-who__container-box h3 {
  color: #004DA1;
  font-size: 34px;
  font-size: 3.4rem;
  display: inline-block;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-who__container-box h3 {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__container-box h3 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-who__container-box h3 span {
  background: linear-gradient(transparent 60%, #FFFF00 60%);
  font-weight: 700;
}

.p-who__container-box p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

.p-who__container-box__btn {
  width: 290px;
}

@media screen and (max-width: 767px) {
  .p-who__container-box__btn {
    width: 64%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__container-box__btn {
    width: 100%;
  }
}

.p-who__container-box__btn a {
  transition: opacity .3s;
}

.p-who__container-box__btn a:hover {
  opacity: .7;
}

.p-who__valve {
  min-height: 300px;
}

@media screen and (max-width: 767px) {
  .p-who__valve {
    min-height: inherit;
    padding-bottom: 0;
  }
}

.p-who__valve::after {
  content: "";
  display: none;
  background: url("../images/who/who-sec01-img02.png") no-repeat left top/contain;
  width: 278px;
  height: 252px;
  position: absolute;
  right: 30px;
  bottom: 0;
}

.p-who__valve > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  max-width: 100%;
}

@media screen and (max-width: 767px) {
  .p-who__valve > div {
    justify-content: space-between;
    padding-bottom: 3%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__valve > div {
    align-items: flex-end;
  }
}

.p-who__valve > div div {
  order: 2;
  width: 60.3125%;
}

@media screen and (max-width: 767px) {
  .p-who__valve > div div {
    order: 1;
    width: 75%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__valve > div div {
    width: 67.5%;
  }
}

.p-who__valve > div figure {
  order: 1;
  width: 33.4375%;
  max-width: 214px;
  margin-right: 6.25%;
}

@media screen and (max-width: 767px) {
  .p-who__valve > div figure {
    order: 2;
    max-width: 100%;
    width: 20%;
    margin-right: 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__valve > div figure {
    width: 25%;
  }
}

.p-who__valve > div figure img {
  width: 100%;
}

.p-who__kitz-valve {
  min-height: 420px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-who__kitz-valve {
    min-height: inherit;
  }
}

@media screen and (max-width: 992px) {
  .p-who__kitz-valve {
    flex-direction: column;
  }
}

.p-who__kitz-valve > div {
  width: 50%;
}

@media screen and (max-width: 992px) {
  .p-who__kitz-valve > div {
    width: 100%;
  }
  .p-who__kitz-valve > div div {
    display: none;
  }
}

.p-who__kitz-valve > div .c-ttl--type02 {
  margin-bottom: 30px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__kitz-valve > div .c-ttl--type02 {
    margin-bottom: 6.66%;
  }
}

.p-who__kitz-valve > div p {
  margin-bottom: 25px;
}

@media screen and (max-width: 992px) {
  .p-who__kitz-valve > div p br {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-who__kitz-valve > div p {
    margin-bottom: 4%;
  }
}

.p-who__kitz-valve figure {
  width: 50%;
  max-width: 440px;
}

@media screen and (max-width: 767px) {
  .p-who__kitz-valve figure {
    max-width: 100%;
    width: 70%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__kitz-valve figure {
    width: 100%;
    top: 0;
  }
}

.p-who__kitz-valve figure img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-who__kitz-valve__btn {
    width: 64% !important;
    margin: 6.66% auto 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__kitz-valve__btn {
    width: 100% !important;
    margin-top: 8%;
  }
}

.p-who__use__box {
  width: 100%;
  max-width: 917px;
  background: url("../images/who/who-sec03-img01.png") no-repeat right top;
  height: 658px;
  margin: 0 auto;
}

@media screen and (max-width: 992px) {
  .p-who__use__box {
    background: none;
    height: inherit;
  }
}

.p-who__use p {
  width: 62%;
}

@media screen and (max-width: 992px) {
  .p-who__use p {
    width: 100%;
  }
}

.p-who__use figure {
  display: none;
}

@media screen and (max-width: 992px) {
  .p-who__use figure {
    display: block;
    width: 85%;
    margin: 5% auto 0;
  }
}

@media screen and (max-width: 992px) and (min-width: 1px) and (max-width: 425px) {
  .p-who__use figure {
    width: 100%;
  }
}

@media screen and (max-width: 992px) {
  .p-who__use figure img {
    width: 100%;
  }
}

.p-who__use__sp {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-who__use__sp {
    display: block;
    width: 90%;
    margin: 0 auto;
  }
  .p-who__use__sp > div {
    margin-bottom: 8%;
  }
  .p-who__use__sp > div:last-child {
    margin-bottom: 0;
  }
  .p-who__use__sp figure {
    width: 100%;
    margin-bottom: 1em;
  }
  .p-who__use__sp figure:last-of-type {
    margin-bottom: 0;
  }
  .p-who__use__sp figure img {
    width: 100%;
  }
  .p-who__use__sp figure figcaption {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: .5em;
  }
}

.p-who__quality h3 {
  display: flex;
  justify-content: center;
  width: auto;
}

@media screen and (max-width: 767px) {
  .p-who__quality h3 {
    display: block;
    margin-bottom: 6.66%;
  }
}

.p-who__quality__lead {
  text-align: center !important;
  font-size: 2.2rem;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-who__quality__lead {
    font-size: 2rem !important;
    text-align: left;
    margin-bottom: 6.66%;
  }
}

.p-who__quality__box {
  width: 100%;
  margin: 0 auto 60px;
  position: relative;
  background: #fff;
  border: 1px solid #B5B5B5;
  border-radius: 10px;
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .p-who__quality__box {
    padding: 5%;
    margin-bottom: 8%;
  }
}

.p-who__quality__box::after {
  content: "";
  display: block;
  background: #F9FAFA;
  width: 80%;
  height: 2px;
  position: absolute;
  top: -1px;
  left: 10%;
}

@media screen and (max-width: 767px) {
  .p-who__quality__box::after {
    display: none;
  }
}

.p-who__quality__box dl {
  position: relative;
  margin-top: -6rem;
  z-index: 2;
}

@media screen and (max-width: 992px) {
  .p-who__quality__box dl {
    margin-top: -5rem;
  }
}

@media screen and (max-width: 767px) {
  .p-who__quality__box dl {
    margin-top: inherit;
  }
}

.p-who__quality__box dl dt {
  position: relative;
  text-align: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-who__quality__box dl dt {
    margin-bottom: 4%;
  }
}

.p-who__quality__box dl dt span {
  color: #ACAC16;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-right: .75em;
}

@media screen and (max-width: 992px) {
  .p-who__quality__box dl dt span {
    font-size: 25px;
    font-size: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .p-who__quality__box dl dt span {
    display: block;
    text-align: left;
    font-size: 30px;
    font-size: 3rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__quality__box dl dt span {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.p-who__quality__box dl dt span:last-of-type {
  margin-right: 0;
}

.p-who__quality__flow {
  position: relative;
}

.p-who__quality__flow::after {
  content: "";
  display: block;
  background: url("../images/who/who-sec04-bg01.svg") no-repeat left center/contain;
  width: 100%;
  height: 100px;
  position: absolute;
  top: -3rem;
  left: 0;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-who__quality__flow::after {
    display: none;
  }
}

.p-who__quality__flow h4 {
  position: relative;
  text-align: center;
  color: #004DA1;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 40px;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .p-who__quality__flow h4 {
    font-size: 21px;
    font-size: 2.1rem;
    margin-bottom: 6.66%;
  }
}

.p-who__quality__flow ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-who__quality__flow ul {
    margin-bottom: 4%;
    justify-content: center;
  }
}

.p-who__quality__flow ul li {
  width: 18%;
  margin-right: 2%;
}

@media screen and (max-width: 767px) {
  .p-who__quality__flow ul li {
    width: 30%;
    margin-right: 5%;
    margin-bottom: 4%;
  }
}

.p-who__quality__flow ul li:nth-child(5n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-who__quality__flow ul li:nth-child(3n) {
    margin-right: 0;
  }
}

.p-who__quality__flow ul li img {
  width: 100%;
}

.p-who__quality__flow ul li span {
  display: block;
  text-align: center;
  margin-top: 1rem;
  font-size: 16px;
  font-size: 1.6rem;
  color: #004DA1;
}

@media screen and (max-width: 767px) {
  .p-who__quality__flow figure {
    width: 90%;
    margin: 0 auto 4%;
  }
  .p-who__quality__flow figure img {
    width: 100%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__quality__flow figure {
    width: 100%;
  }
}

.p-who__quality__btn {
  width: 340px;
  margin: 0 auto;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__quality__btn {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-who__service-sp {
    width: 90%;
    margin: 0 auto 10%;
  }
  .p-who__service-sp figure {
    width: 100%;
    margin: 0 auto;
  }
  .p-who__service-sp figure img {
    width: 100%;
  }
  .p-who__service-sp dl {
    margin-bottom: 8%;
  }
  .p-who__service-sp dl dt {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 3%;
    color: #2B90DD;
  }
  .p-who__service-sp dl dd ul {
    margin-bottom: -.5em;
  }
  .p-who__service-sp dl dd ul li {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: .5em;
    text-indent: -1em;
    margin-left: 1em;
  }
  .p-who__service-sp dl:nth-of-type(2) dt {
    color: #E55F00;
  }
  .p-who__service-sp dl:nth-of-type(3) dt {
    color: #554B9A;
  }
  .p-who__service-sp dl:nth-of-type(4) dt {
    color: #6DB138;
  }
  .p-who__service-sp dl:nth-of-type(5) dt {
    color: #907D27;
  }
  .p-who__service-sp dl:nth-of-type(6) dt {
    color: #30AEAB;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__service-sp {
    width: 100%;
  }
}

.p-who__service h3 {
  display: flex;
  justify-content: center;
  width: auto;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-who__service h3 {
    display: block;
    margin-bottom: 6.66%;
  }
}

.p-who__service h3 + p {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-who__service h3 + p {
    margin-bottom: 5%;
  }
}

.p-who__service figure img {
  display: block;
  width: auto;
  margin: 0 auto 40px;
  mix-blend-mode: multiply;
}

@media screen and (max-width: 767px) {
  .p-who__service figure img {
    margin-bottom: 8%;
  }
}

@media screen and (max-width: 767px) {
  .p-who__service h4 br {
    display: none;
  }
}

.p-who__service__btn {
  width: 340px;
  margin: 0 auto;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__service__btn {
    width: 100%;
  }
}

.p-who__network h3 {
  display: flex;
  justify-content: center;
  width: auto;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-who__network h3 {
    display: block;
    margin-bottom: 6.66%;
  }
}

.p-who__network h3 + p {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-who__network h3 + p {
    margin-bottom: 5%;
  }
}

.p-who__network figure img {
  display: block;
  width: auto;
  margin: 0 auto 40px;
  mix-blend-mode: multiply;
}

@media screen and (max-width: 767px) {
  .p-who__network figure img {
    width: 90%;
    margin: 0 auto 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__network figure img {
    width: 100%;
    margin-bottom: 10%;
  }
}

.p-who__network__btn {
  width: 340px;
  margin: 0 auto;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__network__btn {
    width: 100%;
  }
}

.p-who__movie {
  width: 100%;
  background: #fff;
  padding: 80px 10px;
  mix-blend-mode: multiply;
}

@media screen and (max-width: 767px) {
  .p-who__movie {
    padding: 10% 5%;
  }
}

.p-who__movie h3 {
  color: #004DA1;
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-who__movie h3 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-who__movie h3 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-who__movie__box {
  width: 100%;
  max-width: 570px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-who__movie__box {
    max-width: 100%;
  }
}

.p-who__movie__box a {
  transition: opacity .3s;
}

.p-who__movie__box a:hover {
  opacity: .7;
}

.p-who__movie__box a img {
  width: 100%;
}

.p-product {
  position: relative;
  /* 水処理製品 */
}

.p-product__intro {
  width: 100%;
  max-width: 1200px;
  padding: 60px 10px 80px;
  margin: 0 auto;
  position: relative;
  pointer-events: none;
}

@media screen and (max-width: 767px) {
  .p-product__intro {
    padding: 10% 5%;
  }
}

.p-product__intro h2 {
  color: #004da1;
  font-size: 42px;
  font-size: 4.2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-product__intro h2 {
    font-size: 34px;
    font-size: 3.4rem;
    margin-bottom: 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__intro h2 {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.p-product__intro > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-product__intro > div {
    flex-direction: column;
  }
}

.p-product__intro > div p {
  font-size: 16px;
  font-size: 1.6rem;
  width: 48%;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .p-product__intro > div p {
    order: 2;
    width: 100%;
  }
}

.p-product__intro > div figure {
  width: 48%;
  max-width: 570px;
}

@media screen and (max-width: 767px) {
  .p-product__intro > div figure {
    order: 1;
    width: 65%;
    margin: 0 auto 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__intro > div figure {
    width: 80%;
  }
}

.p-product__nav {
  position: relative;
  padding: 60px 10px;
}

@media screen and (max-width: 767px) {
  .p-product__nav {
    padding: 5%;
    mix-blend-mode: normal;
  }
}

.p-product__nav:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: #f3f4f4;
  mix-blend-mode: multiply;
  z-index: -1;
}

.p-product__nav ul {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  position: relative;
}

.p-product__nav ul li {
  width: 18.5%;
  margin-right: 2.5%;
  margin-bottom: 2.5%;
}

.p-product__nav ul li:nth-child(2), .p-product__nav ul li:nth-child(4), .p-product__nav ul li:nth-child(7), .p-product__nav ul li:nth-child(9) {
  width: 11.5%;
}

.p-product__nav ul li:nth-child(3), .p-product__nav ul li:nth-child(8) {
  width: 30%;
}

.p-product__nav ul li:nth-child(5n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-product__nav ul li {
    width: 48% !important;
    margin-right: 4% !important;
  }
  .p-product__nav ul li:nth-child(2n) {
    margin-right: 0 !important;
  }
}

.p-product__nav ul li a {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  color: #004da1;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 2px 0px #e5e5e5;
  height: 80px;
  line-height: 1.2;
  padding: 10px 10px 20px 10px;
  transition: opacity .3s;
  font-feature-settings: "palt";
}

.p-product__nav ul li a:hover {
  opacity: .7;
}

@media screen and (max-width: 1139px) {
  .p-product__nav ul li a {
    height: 9.5vw;
  }
}

@media screen and (max-width: 992px) {
  .p-product__nav ul li a {
    flex-direction: column;
    height: 11vw;
  }
}

@media screen and (max-width: 767px) {
  .p-product__nav ul li a {
    flex-direction: column;
    padding: 4% 1vw 6% 1vw;
    height: 8.5rem;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-product__nav ul li a span {
  font-size: 12px;
  font-size: 1.2rem;
}

@media screen and (max-width: 992px) {
  .p-product__nav ul li a span {
    display: block;
    margin-top: 0.25rem;
  }
}

.p-product__nav ul li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  margin-top: -2rem;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004da1;
  border-right: 1px solid #004da1;
  transform: rotate(135deg);
  left: 50%;
  margin-left: -2px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__nav ul li a::after {
    margin-top: -1.5rem;
  }
}

.p-product__service {
  padding: 80px 10px;
}

@media screen and (max-width: 767px) {
  .p-product__service {
    padding: 10% 5%;
  }
}

.p-product__service:nth-child(2n) {
  background: #f3f4f4;
  mix-blend-mode: multiply;
}

.p-product__service h2 {
  text-align: center;
  color: #004da1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-product__service h2 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 5%;
  }
}

.p-product__service h2 span {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 0.5rem;
}

.p-product__service h2.u-poppins {
  font-size: 37px;
  font-size: 3.7rem;
}

@media screen and (max-width: 767px) {
  .p-product__service h2.u-poppins {
    font-size: 30px;
    font-size: 3rem;
  }
}

.p-product__service__inner {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

.p-product__service__links01 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: -2%;
}

.p-product__service__links01 li {
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 2%;
}

.p-product__service__links01 li:nth-child(4n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-product__service__links01 li {
    width: 48%;
    margin-right: 4%;
  }
  .p-product__service__links01 li:nth-child(2n) {
    margin-right: 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__service__links01 li {
    width: 100%;
    margin-right: 0;
  }
}

.p-product__service__links01 li a {
  display: block;
  font-size: 15px;
  font-size: 1.5rem;
  position: relative;
  font-feature-settings: "palt";
  margin-left: 1.5em;
  text-indent: -1.5em;
}

.p-product__service__links01 li a::before {
  content: "";
  display: inline-block;
  position: relative;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004DA1;
  border-right: 1px solid #004DA1;
  transform: rotate(45deg);
  margin-right: 1em;
  top: -1px;
}

.p-product__service__links01 li a:hover {
  text-decoration: underline;
}

@media screen and (min-width: 1140px) {
  .p-product__service__links01 li a {
    white-space: nowrap;
  }
}

.p-product__service__links01 li a::after {
  content: "";
  display: inline-block;
  position: relative;
  background: url("../images/common/icon-external_blue.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  margin-left: 0.5em;
}

.p-product__service__links02 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: -2%;
}

.p-product__service__links02 li {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 2%;
}

.p-product__service__links02 li:nth-child(2n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-product__service__links02 li {
    width: 100%;
    margin-right: 0;
  }
}

.p-product__service__links02 li a {
  display: block;
  font-size: 15px;
  font-size: 1.5rem;
  position: relative;
  font-feature-settings: "palt";
  margin-left: 1.5em;
  text-indent: -1.5em;
}

.p-product__service__links02 li a::before {
  content: "";
  display: inline-block;
  position: relative;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004DA1;
  border-right: 1px solid #004DA1;
  transform: rotate(45deg);
  margin-right: 1em;
  top: -1px;
}

.p-product__service__links02 li a:hover {
  text-decoration: underline;
}

.p-product__service__links02 li a::after {
  content: "";
  display: inline-block;
  position: relative;
  background: url("../images/common/icon-external_blue.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  margin-left: 0.5em;
}

.p-product__service.service01 li {
  width: 21.5%;
}

.p-product__service.service01 li:nth-child(2n + 4), .p-product__service.service01 li:nth-child(2) {
  width: 25.5%;
}

@media screen and (max-width: 767px) {
  .p-product__service.service01 li {
    width: 48% !important;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__service.service01 li {
    width: 100% !important;
  }
}

.p-product__service.service02 li {
  width: 16.5%;
}

.p-product__service.service02 li:nth-child(1) {
  width: 30.5%;
}

@media screen and (max-width: 767px) {
  .p-product__service.service02 li {
    width: 36%;
  }
  .p-product__service.service02 li:nth-child(odd) {
    width: 60%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__service.service02 li {
    width: 100%;
  }
}

.p-product__service.service03 li {
  width: 44%;
}

.p-product__service.service03 li:nth-child(odd) {
  width: 54%;
}

@media screen and (max-width: 767px) {
  .p-product__service.service03 li {
    width: 100% !important;
  }
}

.p-product__service.service07 li {
  width: 34%;
}

.p-product__service.service07 li:nth-child(odd) {
  width: 64%;
}

@media screen and (max-width: 767px) {
  .p-product__service.service07 li {
    width: 100% !important;
  }
}

.p-product__service.service08 ul + div {
  width: 520px;
}

.p-product__service.service08 ul + div a br {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-product__service.service08 ul + div {
    width: 85%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__service.service08 ul + div {
    width: 100%;
  }
  .p-product__service.service08 ul + div a br {
    display: block;
  }
}

.p-product__btn {
  width: 380px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .p-product__btn {
    width: 64%;
    margin-top: 6.66%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__btn {
    width: 100%;
  }
}

.p-product__btn a {
  font-size: 17px;
  font-size: 1.7rem;
  font-feature-settings: "palt";
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-product__btn a {
    padding: 3.5% 2rem 3.5% 1rem;
  }
}

.p-product__btn.link-pdf {
  width: 540px;
}

@media screen and (max-width: 767px) {
  .p-product__btn.link-pdf {
    width: 100%;
  }
}

.p-product__water--txt p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8 !important;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-product__water--txt p {
    margin-bottom: 5%;
  }
}

.p-product__water--txt p:last-child {
  margin-bottom: 0;
}

.p-product__water--list {
  margin-top: 60px;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-product__water--list {
    margin-top: 8%;
    margin-bottom: -2.5%;
  }
}

.p-product__water--list > div {
  width: 23.5%;
  margin-right: 2%;
  border: 1px solid #ddd;
  padding: 15px;
}

@media screen and (max-width: 1080px) {
  .p-product__water--list > div {
    width: 49%;
    margin-bottom: 2%;
  }
  .p-product__water--list > div:nth-child(2n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-product__water--list > div {
    width: 100%;
    margin-bottom: 5%;
    margin-right: 0;
  }
}

.p-product__water--list > div:last-child {
  margin-right: 0;
}

.p-product__water--list > div figure {
  margin-bottom: 20px;
  height: 223px;
}

.p-product__water--list > div figure img {
  display: block;
  width: auto;
  margin: 0 auto;
}

.p-product__water--list > div h3 {
  font-size: 22px;
  font-size: 2.2rem;
  text-align: center;
  margin-bottom: 20px;
}

.p-product__water--list > div p {
  font-size: 16px;
  font-size: 1.6rem;
  min-height: 80px;
  margin-bottom: 20px;
}

@media screen and (max-width: 1080px) {
  .p-product__water--list > div p {
    min-height: inherit;
  }
}

@media screen and (max-width: 900px) {
  .p-product__water--list > div p {
    min-height: 80px;
  }
}

@media screen and (max-width: 767px) {
  .p-product__water--list > div p {
    min-height: inherit;
    margin-bottom: 4%;
  }
}

.p-product__water--list > div dl {
  border-bottom: 1px dotted #7b7b7b;
  padding-bottom: 15px;
  min-height: 150px;
}

@media screen and (max-width: 767px) {
  .p-product__water--list > div dl {
    min-height: inherit;
  }
}

.p-product__water--list > div dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 5px;
}

.p-product__water--list > div dl ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.p-product__water--list > div .company-name {
  font-weight: 700;
  margin-top: 15px;
  margin-bottom: 0;
  min-height: inherit;
  text-align: center;
}

@media screen and (max-width: 992px) {
  .p-product-water .p-business-index__intro__box > div {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-product-water .p-business-index__intro__box > div {
    margin-bottom: 8%;
  }
}

.p-business {
  position: relative;
}

.p-business--container h3 {
  text-align: center;
  color: #004DA1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-business--container h3 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--container h3 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-business-container__wrap {
  padding: 80px 10px;
  position: relative;
}

.p-business-container__wrap::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-business-container__wrap {
    padding: 10% 5%;
  }
}

.p-business-container__box {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 80px 50px 50px;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 60px;
  position: relative;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .p-business-container__box {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-business-container__box {
    padding: 5%;
    margin-bottom: 10%;
  }
}

.p-business-container__box:last-of-type {
  margin-bottom: 0;
}

.p-business-container__box h3 {
  color: #004DA1;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-business-container__box h3 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 6.66%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-container__box h3 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-business-container__box__inner {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

.p-business-container__box .c-ttl--type02 {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-business-container__box .c-ttl--type02 {
    margin-bottom: 4%;
  }
}

.p-business-container__box p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.p-business-container__box__source {
  font-size: 1.4rem !important;
  border-top: 1px solid #E6E6E6;
  padding-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-business-container__box__source {
    padding-top: 5%;
  }
}

.p-business-index__intro {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1200px;
  padding: 60px 10px 80px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-business-index__intro {
    padding: 10% 5%;
  }
}

.p-business-index__intro h2 {
  color: #004DA1;
  font-size: 42px;
  font-size: 4.2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 60px;
  font-feature-settings: "palt";
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
  .p-business-index__intro h2 {
    font-size: 34px;
    font-size: 3.4rem;
    margin-bottom: 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-index__intro h2 {
    font-size: 26px;
    font-size: 2.6rem;
    text-align: left;
  }
  .p-business-index__intro h2 br {
    display: none;
  }
}

.p-business-index__intro > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-business-index__intro > div {
    flex-direction: column;
  }
}

.p-business-index__intro > div p {
  font-size: 16px;
  font-size: 1.6rem;
  width: 48%;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .p-business-index__intro > div p {
    order: 2;
    width: 100%;
  }
}

.p-business-index__intro > div figure {
  width: 48%;
  max-width: 570px;
}

@media screen and (max-width: 767px) {
  .p-business-index__intro > div figure {
    order: 1;
    width: 65%;
    margin: 0 auto 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-index__intro > div figure {
    width: 80%;
  }
}

.p-business-index__intro__box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-business-index__intro__box {
    flex-direction: column;
  }
}

.p-business-index__intro__box div {
  width: 48%;
  align-self: center;
}

@media screen and (max-width: 992px) {
  .p-business-index__intro__box div {
    padding-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-business-index__intro__box div {
    width: 100%;
    margin-bottom: 8%;
  }
}

.p-business-index__intro__box div h2 {
  font-size: 42px;
  font-size: 4.2rem;
  text-align: left;
  margin-bottom: 30px;
}

@media screen and (max-width: 992px) {
  .p-business-index__intro__box div h2 {
    font-size: 34px;
    font-size: 3.4rem;
    margin-bottom: 4%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-index__intro__box div h2 {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.p-business-index__intro__box div p {
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
}

.p-business-index__intro__box figure {
  width: 48%;
  max-width: 570px;
}

@media screen and (max-width: 767px) {
  .p-business-index__intro__box figure {
    width: 65%;
    max-width: 100%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-index__intro__box figure {
    width: 80%;
  }
}

.p-business-index__intro__box figure img {
  width: 100%;
}

.p-business-index__work {
  padding: 70px 10px;
  position: relative;
}

.p-business-index__work::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-business-index__work {
    padding: 10% 5%;
  }
}

.p-business-index__work__inner {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.p-business-index__work__inner h3 {
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  text-align: center;
  color: #004DA1;
  margin-bottom: 70px;
}

@media screen and (max-width: 767px) {
  .p-business-index__work__inner h3 {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 10%;
    text-align: left;
  }
  .p-business-index__work__inner h3 br {
    display: none;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-index__work__inner h3 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-business-index__work__graph {
  display: none;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__graph {
    display: block;
    text-align: center;
    margin: 30px auto 60px;
  }
}

@media screen and (max-width: 767px) {
  .p-business-index__work__graph {
    width: 48%;
    margin: 4% auto 10%;
  }
  .p-business-index__work__graph img {
    width: 100%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-index__work__graph {
    width: 70%;
  }
}

.p-business-index__work__intro {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  background: url("../images/business/index/business-sec02-img04.svg") no-repeat center;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro {
    flex-direction: column;
    background: none;
  }
}

.p-business-index__work__intro__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-business-index__work__intro__box {
    margin-bottom: 8%;
  }
}

.p-business-index__work__intro__box:last-of-type {
  margin-bottom: 0;
}

.p-business-index__work__intro__box > div {
  width: 42%;
  margin-right: 2%;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro__box > div {
    width: 250px;
    margin-right: 30px;
  }
}

@media screen and (max-width: 767px) {
  .p-business-index__work__intro__box > div {
    width: 35%;
    margin-right: 5%;
  }
}

.p-business-index__work__intro__box > div figure {
  width: 100%;
  max-width: 250px;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro__box > div figure {
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .p-business-index__work__intro__box > div figure {
    max-width: 100%;
  }
}

.p-business-index__work__intro__box > div figure img {
  width: 100%;
}

.p-business-index__work__intro__box > div a {
  width: 90%;
  margin: 15px auto 0;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro__box > div a {
    width: 250px;
  }
}

@media screen and (max-width: 767px) {
  .p-business-index__work__intro__box > div a {
    display: none;
  }
}

.p-business-index__work__intro__box dl {
  width: 56%;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro__box dl {
    width: calc(100% - 280px);
  }
}

@media screen and (max-width: 767px) {
  .p-business-index__work__intro__box dl {
    width: 60%;
  }
}

.p-business-index__work__intro__box dl dt {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-business-index__work__intro__box dl dt {
    font-size: 21px;
    font-size: 2.1rem;
    margin-bottom: 3%;
  }
}

.p-business-index__work__intro__box dl dt.business01 {
  color: #00BAF4;
}

.p-business-index__work__intro__box dl dt.business02 {
  color: #90CECC;
}

.p-business-index__work__intro__box dl dt.business03 {
  color: #717171;
}

.p-business-index__work__intro__box dl dd p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.8;
  font-feature-settings: "palt";
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro__box dl dd p br {
    display: none;
  }
}

.p-business-index__work__intro__box dl + a {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-business-index__work__intro__box dl + a {
    order: 3;
    display: block;
    width: 64%;
    margin: 5% auto 0;
    padding: 1.25rem 1rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-index__work__intro__box dl + a {
    width: 85%;
  }
}

.p-business-index__work__intro-left {
  width: 50%;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro-left {
    width: 100%;
  }
}

.p-business-index__work__intro-right {
  width: 50%;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro-right {
    width: 100%;
    margin-top: 40px;
  }
}

.p-business-index__work__intro-right > div > div {
  order: 2;
  margin-right: 0;
  margin-left: 2%;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro-right > div > div {
    order: 1;
    margin-left: 0;
    margin-right: 30px;
  }
}

@media screen and (max-width: 767px) {
  .p-business-index__work__intro-right > div > div {
    margin-right: 5%;
  }
}

.p-business-index__work__intro-right > div dl {
  order: 1;
  text-align: right;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__intro-right > div dl {
    order: 2;
    text-align: left;
  }
}

.p-business-index__work__note {
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  text-align: right;
  line-height: 1;
}

@media screen and (max-width: 1179px) {
  .p-business-index__work__note {
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  .p-business-index__work__note {
    margin-top: 5%;
  }
}

.p-business-valve__intro {
  padding: 70px 10px;
  position: relative;
}

.p-business-valve__intro::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-business-valve__intro {
    padding: 10% 5%;
  }
}

.p-business-valve__intro__inner {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.p-business-valve__intro__inner ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: -4%;
}

.p-business-valve__intro__inner ul li {
  width: 30%;
  margin-right: 5%;
  margin-bottom: 4%;
}

@media screen and (max-width: 767px) {
  .p-business-valve__intro__inner ul li {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
  .p-business-valve__intro__inner ul li:last-child {
    margin-bottom: 0;
  }
}

.p-business-valve__intro__inner ul li:nth-child(3n) {
  margin-right: 0;
}

.p-business-valve__intro__inner ul li figure {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-business-valve__intro__inner ul li figure {
    margin-bottom: 0;
    width: 35%;
    margin-right: 5%;
  }
}

.p-business-valve__intro__inner ul li figure img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-business-valve__intro__inner ul li dl {
    width: 60%;
  }
}

.p-business-valve__intro__inner ul li dl dt {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-business-valve__intro__inner ul li dl dt {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 3%;
  }
}

.p-business-valve__intro__inner ul li dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-valve__intro__inner ul li dl dd p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-business-valve__intro__inner__btn {
  width: 290px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .p-business-valve__intro__inner__btn {
    width: 64%;
    margin-top: 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-valve__intro__inner__btn {
    width: 80%;
    margin-top: 12%;
  }
}

.p-business-valve__feature {
  padding: 70px 10px;
}

@media screen and (max-width: 767px) {
  .p-business-valve__feature {
    padding: 10% 5%;
  }
}

.p-business-valve__feature__inner {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}

.p-business-valve__feature__inner section {
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-business-valve__feature__inner section {
    margin-bottom: 8%;
  }
}

.p-business-valve__feature__inner section:last-of-type {
  margin-bottom: 0;
}

.p-business-valve__feature__inner section h4 {
  font-size: 28px;
  font-size: 2.8rem;
}

@media screen and (max-width: 767px) {
  .p-business-valve__feature__inner section h4 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-valve__feature__inner section h4 {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.p-business-valve__feature__inner section p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.p-business-valve__feature__inner section p + h4 {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .p-business-valve__feature__inner section p + h4 {
    margin-top: 8%;
  }
}

.p-business-valve__feature__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-business-valve__feature__box {
    flex-direction: column;
  }
}

.p-business-valve__feature__box > div {
  width: 68%;
  margin-right: 4%;
}

@media screen and (max-width: 767px) {
  .p-business-valve__feature__box > div {
    order: 2;
    width: 100%;
    margin-right: 0;
  }
}

.p-business-valve__feature__box figure {
  width: 28%;
}

@media screen and (max-width: 767px) {
  .p-business-valve__feature__box figure {
    order: 1;
    width: 40%;
    margin: 0 auto 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-valve__feature__box figure {
    width: 65%;
  }
}

.p-business-valve__bg {
  width: 100%;
  background: #fff url("../images/business/valve/valve-bg-img01.svg") no-repeat center/cover;
  height: 330px;
}

@media screen and (max-width: 767px) {
  .p-business-valve__bg {
    height: 44vw;
  }
}

.p-business--research__sec01__box > p {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec01__box > p {
    margin-bottom: 5%;
  }
}

.p-business--research__sec01__box > div {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec01__box > div {
    margin-bottom: 5%;
  }
}

.p-business--research__sec01__box > div:last-of-type {
  margin-bottom: 0;
}

.p-business--research__sec02 p {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec02 p {
    margin-bottom: 5%;
  }
}

.p-business--research__sec02__box figure {
  text-align: center;
  margin-top: 40px;
  width: 100%;
  max-width: 487px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec02__box figure {
    max-width: 100%;
    width: 65%;
    margin-top: 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--research__sec02__box figure {
    width: 85%;
  }
}

.p-business--research__sec02__box figure img {
  width: 100%;
}

.p-business--research__sec03 p {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03 p {
    margin-bottom: 5%;
  }
}

.p-business--research__sec03__box {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box {
    margin-bottom: 5%;
  }
}

.p-business--research__sec03__box__col2 {
  display: flex;
}

.p-business--research__sec03__box__col2 figure {
  width: 50%;
}

.p-business--research__sec03__box__col2 figure:nth-child(odd) {
  padding-right: 1%;
}

.p-business--research__sec03__box__col2 figure:nth-child(even) {
  padding-left: 1%;
}

.p-business--research__sec03__box__flow {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin: 60px 0 0;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow {
    margin-top: 10%;
    flex-direction: column;
  }
}

.p-business--research__sec03__box__flow li {
  width: 52%;
  margin-right: 5%;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-business--research__sec03__box__flow li:nth-child(2n) {
  width: 43%;
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow li:nth-child(2n) {
    width: 100%;
  }
}

.p-business--research__sec03__box__flow li dl {
  width: 45%;
  margin-right: 3%;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow li dl {
    width: 100%;
    margin-right: 0;
    margin-bottom: 4%;
  }
}

.p-business--research__sec03__box__flow li dl dt {
  color: #004DA1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 15px;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow li dl dt {
    margin-bottom: 3%;
  }
}

.p-business--research__sec03__box__flow li dl dd p {
  font-size: 15px;
  font-size: 1.5rem;
  margin-bottom: 0;
}

.p-business--research__sec03__box__flow li figure {
  width: 52%;
  margin-top: 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--research__sec03__box__flow li figure {
    width: 86%;
    margin: 0 auto;
  }
}

.p-business--research__sec03__box__flow li figure img {
  width: 100%;
}

.p-business--research__sec03__box__flow li:nth-child(2n) dl {
  width: 55%;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow li:nth-child(2n) dl {
    width: 100%;
  }
}

.p-business--research__sec03__box__flow li:nth-child(2n) figure {
  width: 42%;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--research__sec03__box__flow li:nth-child(2n) figure {
    width: 86%;
  }
}

.p-business--research__sec03__box__flow li:nth-child(3) figure {
  text-align: left;
}

.p-business--research__sec03__box__flow li:nth-child(3) figure img {
  width: 70%;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow li:nth-child(3) figure img {
    width: 80%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--research__sec03__box__flow li:nth-child(3) figure img {
    width: 100%;
  }
}

.p-business--research__sec03__box__flow02 > p {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow02 > p {
    margin-bottom: 4%;
  }
}

.p-business--research__sec03__box__flow02 > p span {
  display: block;
  color: #004DA1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 10px;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow02 > p span {
    margin-bottom: 1em;
  }
}

.p-business--research__sec03__box__flow02 ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow02 ul {
    margin-bottom: -6.66%;
  }
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow02 ul {
    margin-bottom: -8%;
  }
}

.p-business--research__sec03__box__flow02 ul li {
  width: 20.5%;
  margin-right: 6%;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow02 ul li {
    width: 49%;
    margin-right: 2%;
    margin-bottom: 6.66%;
  }
  .p-business--research__sec03__box__flow02 ul li:nth-child(2n) {
    margin-right: 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--research__sec03__box__flow02 ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-business--research__sec03__box__flow02 ul li:nth-child(4n) {
  margin-right: 0;
}

.p-business--research__sec03__box__flow02 ul li figure {
  width: 86%;
  margin: 0 auto 15px;
}

.p-business--research__sec03__box__flow02 ul li figure img {
  width: 100%;
}

.p-business--research__sec03__box__flow02 ul li dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 15px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow02 ul li dl dt {
    margin-bottom: 3%;
  }
}

.p-business--research__sec03__box__flow02 ul li dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-business--research__sec03__box__flow02 ul li dl dd p {
    padding: 0 1rem;
  }
}

.p-business--production__container__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  max-width: 1140px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box {
    flex-direction: column;
  }
}

.p-business--production__container__box > div {
  width: 60%;
  margin-right: 5%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box > div {
    width: 100%;
    margin-right: 0;
  }
}

.p-business--production__container__box > div h3 {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box > div h3 {
    margin-bottom: 4%;
  }
  .p-business--production__container__box > div h3 br {
    display: none;
  }
}

.p-business--production__container__box > div p {
  line-height: 1.8;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box > div p {
    margin-bottom: 4%;
  }
}

.p-business--production__container__box > div p:last-of-type {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box > div figure {
    width: 64%;
    margin: 0 auto 5%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--production__container__box > div figure {
    width: 80%;
  }
}

.p-business--production__container__box > div.u-full {
  width: 100%;
  margin-right: 0;
}

.p-business--production__container__box > div.u-full + figure {
  width: 60%;
  margin: 40px auto 0;
}

.p-business--production__container__box > div.u-full figure {
  width: 100%;
}

.p-business--production__container__box figure {
  width: 35%;
}

.p-business--production__container__box figure img {
  width: 100%;
}

.p-business--production__container__box.container-block {
  display: block;
}

.p-business--production__container__box.container-block .brass-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-bottom: -4%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box.container-block .brass-flow {
    flex-direction: column;
  }
}

.p-business--production__container__box.container-block .brass-flow li {
  width: 30%;
  margin-right: 5%;
  margin-bottom: 4%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box.container-block .brass-flow li {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-business--production__container__box.container-block .brass-flow li:nth-child(3n) {
  margin-right: 0;
}

.p-business--production__container__box.container-block .brass-flow li figure {
  width: 100%;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box.container-block .brass-flow li figure {
    width: 30%;
    margin-right: 5%;
    margin-bottom: 0;
  }
}

.p-business--production__container__box.container-block .brass-flow li figure img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box.container-block .brass-flow li > div {
    width: 65%;
  }
}

.p-business--production__container__box.container-block .brass-flow li h4 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #004DA1;
  line-height: 1;
  margin-bottom: 15px;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box.container-block .brass-flow li h4 {
    margin-bottom: 2.5%;
  }
}

.p-business--production__container__box.container-block .brass-flow li h4 sub {
  position: relative;
  top: -5px;
  font-size: 12px;
  font-size: 1.2rem;
  margin-left: .5em;
}

.p-business--production__container__box.container-block .brass-flow li p {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-business--production__container__box.container-block .pickup-list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;
  max-width: 1050px;
  margin: 30px auto -5%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box.container-block .pickup-list {
    margin-top: 8%;
  }
}

.p-business--production__container__box.container-block .pickup-list li {
  width: 21%;
  margin-right: 5.33%;
  margin-bottom: 6.66%;
  max-width: 220px;
}

.p-business--production__container__box.container-block .pickup-list li:nth-child(4n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box.container-block .pickup-list li {
    max-width: inherit;
    width: 47.5%;
    margin-right: 5%;
  }
  .p-business--production__container__box.container-block .pickup-list li:nth-child(2n) {
    margin-right: 0;
  }
}

.p-business--production__container__box.container-block .pickup-list li figure {
  width: 100%;
}

.p-business--production__container__box.container-block .pickup-list li figure figcaption {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  display: block;
  margin-top: 10px;
}

.p-business--production__container__box02 {
  max-width: 1140px;
  margin: 60px auto;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02 {
    margin: 10% auto;
  }
}

.p-business--production__container__box02:last-of-type {
  margin-bottom: 0;
}

.p-business--production__container__box02__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02__inner {
    flex-direction: column;
  }
}

.p-business--production__container__box02__inner p {
  width: 73%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02__inner p {
    order: 2;
    width: 100%;
    margin-top: 5%;
  }
}

.p-business--production__container__box02__inner figure {
  width: 23.25%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02__inner figure {
    width: 64%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--production__container__box02__inner figure {
    width: 80%;
  }
}

.p-business--production__container__box02__inner figure img {
  width: 100%;
}

.p-business--production__container__box02.production-flow h4 {
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02.production-flow h4 {
    margin-bottom: 6.66%;
  }
}

.p-business--production__container__box02.production-flow h4 + figure {
  width: 100%;
  max-width: 845px;
  margin: 0 auto 60px;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02.production-flow h4 + figure {
    width: 100%;
    margin-bottom: 8%;
  }
}

.p-business--production__container__box02.production-flow .production-flow__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  max-width: 1000px;
  margin: 0 auto -2%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02.production-flow .production-flow__list {
    flex-direction: column;
    margin-bottom: -10%;
  }
}

.p-business--production__container__box02.production-flow .production-flow__list li {
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 2%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02.production-flow .production-flow__list li {
    width: 100%;
    margin-right: 0;
    display: flex;
    flex-direction: column;
    margin-bottom: 10%;
  }
}

.p-business--production__container__box02.production-flow .production-flow__list li:nth-child(4n) {
  margin-right: 0;
}

.p-business--production__container__box02.production-flow .production-flow__list li figure {
  width: 78%;
  margin: 0 auto 1em;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02.production-flow .production-flow__list li figure {
    order: 2;
    width: 64%;
    margin: 1.5em auto 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business--production__container__box02.production-flow .production-flow__list li figure {
    width: 80%;
  }
}

.p-business--production__container__box02.production-flow .production-flow__list li figure img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-business--production__container__box02.production-flow .production-flow__list li dl {
    order: 1;
  }
}

.p-business--production__container__box02.production-flow .production-flow__list li dl dt {
  color: #004DA1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 1em;
  font-feature-settings: "palt";
}

.p-business--production__container__box02.production-flow .production-flow__list li dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-business-global .p-business-index__intro__box h2 {
  font-size: 40px;
  font-size: 4rem;
  white-space: nowrap;
}

@media screen and (max-width: 1199px) {
  .p-business-global .p-business-index__intro__box h2 {
    white-space: normal;
  }
}

@media screen and (max-width: 767px) {
  .p-business-global .p-business-index__intro__box h2 {
    font-size: 34px;
    font-size: 3.4rem;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-global .p-business-index__intro__box h2 {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.p-business-global__container {
  padding: 80px 60px 60px;
}

@media screen and (max-width: 767px) {
  .p-business-global__container {
    padding: 10% 5%;
  }
}

.p-business-global__container__box p:not(:last-of-type) {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box p:not(:last-of-type) {
    margin-bottom: 5%;
  }
}

.p-business-global__container__box p + h4 {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box p + h4 {
    margin-top: 10%;
  }
}

.p-business-global__container__box p + h4 + figure {
  width: 100%;
  max-width: 962px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box p + h4 + figure {
    margin-top: 5%;
  }
}

.p-business-global__container__box__area {
  width: 100%;
  max-width: 820px;
  margin: 80px auto 0;
  padding-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area {
    margin-top: 10%;
    width: 80%;
    padding-bottom: 8%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-global__container__box__area {
    width: 100%;
  }
}

.p-business-global__container__box__area h4 {
  position: relative;
  width: auto;
  left: 50%;
  transform: translate(-50%, 0);
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  display: inline-block;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area h4 {
    margin-bottom: 4%;
  }
}

.p-business-global__container__box__area h4::before, .p-business-global__container__box__area h4::after {
  content: "";
  display: inline-block;
  background: #707070;
  width: 80px;
  height: 1px;
  position: absolute;
  top: 50%;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area h4::before, .p-business-global__container__box__area h4::after {
    width: 10vw;
  }
}

.p-business-global__container__box__area h4::before {
  left: -120px;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area h4::before {
    left: -15vw;
  }
}

.p-business-global__container__box__area h4::after {
  margin-left: 3rem;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area h4::after {
    margin-left: 6vw;
  }
}

.p-business-global__container__box__area ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: -8%;
}

.p-business-global__container__box__area ul li {
  width: 23.5%;
  margin-right: 2%;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area ul li {
    flex-direction: column;
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-business-global__container__box__area ul li:nth-child(3n) {
  margin-right: 0;
}

.p-business-global__container__box__area ul li dl dt {
  color: #004DA1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  min-height: 80px;
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area ul li dl dt {
    min-height: inherit;
  }
}

.p-business-global__container__box__area ul li dl dt em {
  display: block;
  font-weight: normal;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: .5em;
}

.p-business-global__container__box__area ul li dl dd p {
  min-height: 180px;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area ul li dl dd p {
    min-height: inherit;
  }
}

.p-business-global__container__box__area ul li dl dd figure {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-business-global__container__box__area ul li dl dd figure {
    width: 64%;
    margin: 0 auto;
  }
}

.p-business-global__container__box__area ul li dl dd figure figcaption {
  display: block;
  margin-top: .75em;
  text-align: center;
  font-size: 13px;
  font-size: 1.3rem;
}

.p-business-global__container__box__area ul li dl dd figure figcaption span {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  margin-top: .25rem;
}

.p-business-strength__intro {
  padding: 70px 10px;
  position: relative;
}

.p-business-strength__intro::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro {
    padding: 10% 5%;
  }
}

.p-business-strength__intro__inner {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.p-business-strength__intro__inner ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: -4%;
}

.p-business-strength__intro__inner ul li {
  width: 30%;
  margin-right: 5%;
  margin-bottom: 4%;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner ul li {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
  .p-business-strength__intro__inner ul li:last-child {
    margin-bottom: 0;
  }
}

.p-business-strength__intro__inner ul li:nth-child(3n) {
  margin-right: 0;
}

.p-business-strength__intro__inner ul li figure {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner ul li figure {
    margin-bottom: 0;
    width: 35%;
    margin-right: 5%;
  }
}

.p-business-strength__intro__inner ul li figure img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner ul li dl {
    width: 60%;
  }
}

.p-business-strength__intro__inner ul li dl dt {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 15px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner ul li dl dt {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 3%;
  }
}

.p-business-strength__intro__inner ul li dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  min-height: 100px;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner ul li dl dd p {
    min-height: inherit;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-strength__intro__inner ul li dl dd p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-business-strength__intro__inner ul li dl dd a {
  display: block;
  width: 200px;
  margin: 20px auto 0;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner ul li dl dd a {
    font-size: 16px;
    font-size: 1.6rem;
    width: 64%;
    margin: 5% auto 0;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-strength__intro__inner ul li dl dd a {
    width: 80%;
  }
}

.p-business-strength__intro__inner__box {
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 100px auto 0;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner__box {
    margin-top: 20vw;
  }
}

.p-business-strength__intro__inner__box::before {
  content: "";
  background: url("../images/business/strength/strength-sec02-img04.svg") no-repeat center top/contain;
  width: 470px;
  height: 26px;
  position: absolute;
  top: -60px;
  left: 50%;
  margin-left: -235px;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner__box::before {
    width: 60vw;
    height: 3.3vw;
    top: -8vw;
    margin-left: -30vw;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-strength__intro__inner__box::before {
    width: 70vw;
    height: 3.9vw;
    top: -8vw;
    margin-left: -35vw;
  }
}

.p-business-strength__intro__inner__box__txt01 {
  color: #fff;
  font-size: 38px;
  font-size: 3.8rem;
  font-weight: 700;
  text-align: center;
  background: #004DA1;
  border-radius: 60px;
  padding: 20px 10px;
  margin-bottom: 30px;
}

.p-business-strength__intro__inner__box__txt01 br {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner__box__txt01 {
    font-size: 30px;
    font-size: 3rem;
    border-radius: 10px;
    padding: 3% 1vw;
    margin-bottom: 5%;
  }
  .p-business-strength__intro__inner__box__txt01 br {
    display: block;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-strength__intro__inner__box__txt01 {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

.p-business-strength__intro__inner__box__txt02 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  padding: 0 1em;
}

@media screen and (max-width: 767px) {
  .p-business-strength__intro__inner__box__txt02 {
    padding: 0;
  }
}

.p-business-other__intro {
  padding: 70px 10px;
  position: relative;
}

.p-business-other__intro::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #F3F4F4;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-business-other__intro {
    padding: 10% 5%;
  }
}

.p-business-other__intro__inner {
  width: 100%;
  max-width: 840px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.p-business-other__intro__inner h3 {
  color: #004DA1;
  text-align: center;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 35px;
}

@media screen and (max-width: 767px) {
  .p-business-other__intro__inner h3 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-bottom: 5%;
  }
}

.p-business-other__intro__inner__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-business-other__intro__inner__box {
    flex-direction: column;
    margin-bottom: 6.66%;
  }
}

.p-business-other__intro__inner__box__txt {
  width: 62.5%;
}

@media screen and (max-width: 767px) {
  .p-business-other__intro__inner__box__txt {
    order: 2;
    width: 100%;
    margin-top: 4%;
  }
}

.p-business-other__intro__inner__box__txt p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 30px;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-business-other__intro__inner__box__txt p {
    margin-bottom: 4%;
  }
}

.p-business-other__intro__inner__box__txt p:last-of-type {
  margin-bottom: 0;
}

.p-business-other__intro__inner__box__photo {
  width: 30%;
}

@media screen and (max-width: 767px) {
  .p-business-other__intro__inner__box__photo {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: space-between;
  }
}

.p-business-other__intro__inner__box__photo figure {
  width: 100%;
  max-width: 250px;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-business-other__intro__inner__box__photo figure {
    order: 1;
    max-width: 100%;
    width: 48%;
    margin-right: 4%;
    margin-bottom: 0;
  }
}

.p-business-other__intro__inner__box__photo figure:last-child {
  margin-right: 0;
  margin-bottom: 0;
}

.p-business-other__intro__inner__box__photo figure img {
  width: 100%;
}

.p-business-other__intro__btn {
  width: 290px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-business-other__intro__btn {
    width: 64%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-business-other__intro__btn {
    width: 80%;
  }
}

.p-faq {
  padding: 30px 0 80px;
  position: relative;
}

.p-faq::after {
  content: "";
  width: 100%;
  height: 100%;
  background: #f3f4f4;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  display: block;
}

.p-faq__other {
  background: #fff;
  padding: 30px 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__other {
    padding: 20px 0;
  }
}

.p-faq__other p {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-faq__other p {
    padding: 0 10px;
  }
}

.p-faq__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 1280px) {
  .p-faq__inner {
    padding: 0 10px;
  }
}

.p-faq__inner article > section + section {
  margin-top: 60px;
}

.p-faq__cat {
  background: #fff;
  border-radius: 10px;
  padding: 35px 40px 40px;
  margin-bottom: 80px;
  box-shadow: 0px 3px 36px rgba(0, 0, 0, 0.04);
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__cat {
    padding: 20px;
    margin-bottom: 60px;
  }
}

.p-faq__cat dl dt {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  color: #004da1;
  position: relative;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__cat dl dt {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.p-faq__cat dl dd > div {
  border-top: 1px solid #e6e6e6;
  padding-top: 30px;
  margin-top: 35px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__cat dl dd > div {
    padding-top: 20px;
    margin-top: 20px;
  }
}

.p-faq__cat dl dd > div p {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #004da1;
  margin-bottom: 15px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__cat dl dd > div p {
    font-size: 17px;
    font-size: 1.7rem;
    margin-bottom: 10px;
  }
}

.p-faq__cat dl dd > div ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-bottom: -25px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__cat dl dd > div ul {
    margin-bottom: -15px;
  }
}

.p-faq__cat dl dd > div ul li {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  margin: 0 25px 25px 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__cat dl dd > div ul li {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 15px 15px 0;
  }
}

.p-faq__cat dl dd > div ul li a {
  width: 100%;
  height: 100%;
  font-weight: bold;
  color: #004da1;
  background: #f3f5f5;
  border-radius: 4px;
  padding: 8px 20px;
  box-shadow: 0px 1px 0px #e5e5e5;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  transition: color 0.3s, background 0.3s;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__cat dl dd > div ul li a {
    padding: 10px;
  }
}

.p-faq__cat dl dd > div ul li a span {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: inherit;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__cat dl dd > div ul li a span {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.p-faq__cat dl dd > div ul li a:hover {
  color: #fff;
  background: #004da1;
}

.p-faq__cat dl dd > div ul li.is-current a {
  color: #fff;
  background: #004da1;
}

.p-faq h2 {
  font-size: 30px;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  color: #004da1;
  margin-top: 80px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq h2 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-top: 60px;
  }
}

.p-faq h3 {
  font-size: 20px;
  font-size: 2rem;
  color: #004da1;
  background: linear-gradient(0deg, #c1c1c1, #c1c1c1 1px, transparent 0, transparent);
  padding: 0 0 10px 10px;
  margin-top: 30px;
  position: relative;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq h3 {
    font-size: 17px;
    font-size: 1.7rem;
    padding: 0 0 5px 5px;
    margin-top: 20px;
  }
}

.p-faq h3::before {
  content: "";
  width: 250px;
  height: 2px;
  background: #418ac9;
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq h3::before {
    width: 100px;
  }
}

.p-faq h4 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  color: #004da1;
  margin-top: 30px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq h4 {
    font-size: 17px;
    font-size: 1.7rem;
    margin-top: 20px;
  }
}

.p-faq__list {
  background: #fff;
  border-radius: 10px;
  padding: 30px 35px;
  margin-top: 40px;
  box-shadow: 0px 3px 36px rgba(0, 0, 0, 0.04);
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list {
    padding: 20px;
    margin-top: 30px;
  }
}

.p-faq__list > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list > div {
    display: block;
  }
}

.p-faq__list > div p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
  color: #004da1;
  margin: 5px 15px 0 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list > div p {
    font-size: 12px;
    font-size: 1.2rem;
    margin: 0 0 10px 0;
  }
}

.p-faq__list > div ul {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

.p-faq__list > div ul li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
  color: #fff;
  background: #004da1;
  padding: 5px 10px;
  margin: 0 10px 10px 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list > div ul li {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.p-faq__list dt {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  color: #004da1;
  padding: 0 34px 0 1.3em;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dt {
    font-size: 18px;
    font-size: 1.8rem;
    padding-right: 30px;
  }
}

.p-faq__list dt::before {
  content: "Q.";
  position: absolute;
  top: -2px;
  left: 0;
  display: inline-block;
}

.p-faq__list dt span {
  width: 24px;
  height: 24px;
  margin: auto 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dt span {
    width: 20px;
    height: 20px;
  }
}

.p-faq__list dt span::before {
  content: "";
  width: 100%;
  height: 4px;
  background: #004da1;
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  display: inline-block;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dt span::before {
    height: 2px;
  }
}

.p-faq__list dt span::after {
  content: "";
  width: 4px;
  height: 100%;
  background: #004da1;
  margin: 0 auto;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: inline-block;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dt span::after {
    width: 2px;
  }
}

.p-faq__list dt.is-open span::after {
  content: none;
}

.p-faq__list dd {
  padding: 0 0 0 2.5em;
  margin-top: 30px;
  position: relative;
  display: none;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dd {
    margin-top: 20px;
  }
}

.p-faq__list dd::before {
  content: "A.";
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  color: #d62626;
  position: absolute;
  top: -4px;
  left: 0;
  display: inline-block;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dd::before {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.p-faq__list dd > div > div p {
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dd > div > div p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-faq__list dd > div > div p span {
  padding-left: 17px;
}

.p-faq__list dd > div > div p a {
  color: #004da1;
}

.p-faq__list dd > div > div p + p {
  margin-top: 40px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dd > div > div p + p {
    margin-top: 30px;
  }
}

.p-faq__list dd > div > div img {
  display: block;
}

.p-faq__list dd > div > div img.alignleft {
  margin: 40px 0;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dd > div > div img.alignleft {
    margin: 20px 0;
  }
}

.p-faq__list dd > div > div img.aligncenter {
  margin: 40px auto;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dd > div > div img.aligncenter {
    margin: 20px auto;
  }
}

.p-faq__list dd > div > div img.alignright {
  margin: 40px 0 40px auto;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dd > div > div img.alignright {
    margin: 20px 0 20px auto;
  }
}

.p-faq__list dd > div > figure {
  margin-left: 35px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__list dd > div > figure {
    margin-top: 20px;
  }
}

.p-faq__empty {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  margin-top: 60px;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__empty {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 40px;
  }
}

.p-faq__empty span {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  color: #004da1;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-faq__empty span {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.p-faq__empty a {
  color: #004da1;
  text-decoration: underline;
}

.p-faq__empty a:hover {
  text-decoration: none;
}

.p-faq div[id] {
  margin-top: -80px;
  padding-top: 80px;
}

.p-sustainability-ttl__h2 {
  color: #004da1;
  font-size: 30px;
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 30px;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-sustainability-ttl__h2 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 5%;
  }
}

.p-sustainability-ttl__h3 {
  color: #004da1;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-ttl__h3 {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 4%;
  }
}

.p-sustainability-ttl__h4 {
  color: #004da1;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-ttl__h4 {
    font-size: 17px;
    font-size: 1.7rem;
    margin-bottom: 3%;
  }
}

.p-sustainability-ttl__h5 {
  color: #004da1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-ttl__h5 {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 3%;
  }
}

.p-sustainability-col__type01 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

.p-sustainability-col__type01 > div {
  width: 55%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-col__type01 > div {
    order: 2;
    width: 100%;
  }
}

.p-sustainability-col__type01 figure {
  width: 40%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-col__type01 figure {
    order: 1;
    width: 75%;
    margin: 0 auto 6%;
  }
}

.p-sustainability-col__type01 figure img {
  width: 100%;
}

.p-sustainability-col__type02 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

.p-sustainability-col__type02 > div {
  width: 49%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-col__type02 > div {
    flex-direction: column;
    order: 2;
    width: 100%;
  }
  .p-sustainability-col__type02 > div:last-child {
    margin-top: 8%;
  }
}

.p-sustainability-img {
  display: block;
  width: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-img {
    width: 100%;
  }
}

.p-sustainability-top__intro {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  padding: 60px 0;
}

@media screen and (max-width: 1280px) {
  .p-sustainability-top__intro {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-top__intro {
    padding: 60px 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__intro {
    padding: 10% 5%;
  }
}

.p-sustainability-top__intro p {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__intro p {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6;
  }
}

.p-sustainability-top__news {
  position: relative;
  padding: 40px 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news {
    padding: 8% 0;
  }
}

.p-sustainability-top__news::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.p-sustainability-top__news__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1280px) {
  .p-sustainability-top__news__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner {
    padding: 0 5%;
    flex-direction: column;
  }
}

.p-sustainability-top__news__inner > div:first-child {
  width: 20%;
  border-right: 1px solid #dedede;
  padding: 40px 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:first-child {
    width: 100%;
    border-right: none;
    padding: 0;
  }
}

.p-sustainability-top__news__inner > div:first-child a {
  width: 110px;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 7px 10px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:first-child a {
    display: none;
  }
}

.p-sustainability-top__news__inner > div:first-child h3 {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  color: #1d4c9b;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:first-child h3 {
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center;
    margin-bottom: 5%;
  }
}

.p-sustainability-top__news__inner > div:last-child {
  width: 80%;
  padding-left: 8%;
}

@media screen and (max-width: 1024px) {
  .p-sustainability-top__news__inner > div:last-child {
    padding-left: 4%;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:last-child {
    width: 100%;
    padding: 0;
  }
}

.p-sustainability-top__news__inner > div:last-child dl {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:last-child dl {
    padding-bottom: 4%;
    border-bottom: 1px dotted #000;
    margin-bottom: 4%;
    flex-direction: column;
  }
}

.p-sustainability-top__news__inner > div:last-child dl:last-child {
  margin-bottom: 0;
}

.p-sustainability-top__news__inner > div:last-child dl dt {
  font-size: 18px;
  font-size: 1.8rem;
  width: 140px;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:last-child dl dt {
    font-size: 16px;
    font-size: 1.6rem;
    width: 100%;
    line-height: 1;
    margin-bottom: 2.5%;
  }
}

.p-sustainability-top__news__inner > div:last-child dl dt time {
  font-weight: bold;
}

.p-sustainability-top__news__inner > div:last-child dl dd {
  width: calc(100% - 140px);
  padding-left: 2em;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:last-child dl dd {
    width: 100%;
    padding-left: 0;
  }
}

.p-sustainability-top__news__inner > div:last-child dl dd a {
  display: block;
  transition: opacity .3s;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4;
  font-feature-settings: "palt";
}

.p-sustainability-top__news__inner > div:last-child dl dd a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:last-child dl dd a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-sustainability-top__news__inner > div:last-child dl dd a.link-pdf {
  position: relative;
  padding-right: 1em;
}

.p-sustainability-top__news__inner > div:last-child dl dd a.link-pdf::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
  margin-top: 2px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:last-child dl dd a.link-pdf::after {
    margin-top: inherit;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__news__inner > div:last-child .u-pc-none {
    width: 60%;
    margin: 8% auto 0;
  }
  .p-sustainability-top__news__inner > div:last-child .u-pc-none a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-sustainability-top__pickup {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  max-width: 1180px;
  padding: 60px 10px !important;
}

@media screen and (max-width: 1280px) {
  .p-sustainability-top__pickup {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__pickup {
    padding: 8% 5% !important;
  }
}

.p-sustainability-top__pickup h3 {
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: bold;
  color: #1d4c9b;
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__pickup h3 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 5%;
  }
}

.p-sustainability-top__pickup ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__pickup ul {
    flex-direction: column;
    margin-bottom: -5%;
  }
}

.p-sustainability-top__pickup ul li {
  width: 23.5%;
  margin-right: 2%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__pickup ul li {
    width: 100%;
    margin-right: 0;
  }
}

.p-sustainability-top__pickup ul li:nth-child(4n) {
  margin-right: 0;
}

.p-sustainability-top__pickup ul li a {
  display: block;
  transition: opacity .3s;
}

.p-sustainability-top__pickup ul li a:hover {
  opacity: .7;
}

.p-sustainability-top__pickup ul li a img {
  width: 100%;
  border-radius: 10px;
  -o-object-fit: cover;
     object-fit: cover;
  height: 150px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__pickup ul li a {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    margin-bottom: 5%;
  }
  .p-sustainability-top__pickup ul li a figure {
    width: 35%;
    margin-right: 5%;
  }
  .p-sustainability-top__pickup ul li a figure img {
    height: 25vw;
    border-radius: 2vw;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-top__pickup ul li a figure img {
    height: 30vw;
  }
}

.p-sustainability-top__pickup ul li a dl {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__pickup ul li a dl {
    margin-top: 0;
    width: 60%;
  }
}

.p-sustainability-top__pickup ul li a dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 0.5em;
}

.p-sustainability-top__pickup ul li a dl dt time {
  font-weight: bold;
}

.p-sustainability-top__pickup ul li a dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.6;
}

.p-sustainability-top__pickup ul li a.link-pdf dd p {
  position: relative;
  padding-right: 1em;
}

.p-sustainability-top__pickup ul li a.link-pdf dd p::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
  margin-top: 2px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__pickup ul li a.link-pdf dd p::after {
    margin-top: inherit;
  }
}

.p-sustainability-top__pickup--btn {
  width: 140px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__pickup--btn {
    width: 60%;
    margin-top: 8%;
  }
}

.p-sustainability-top__bnrs {
  position: relative;
  padding: 80px 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs {
    padding: 10% 5%;
  }
}

.p-sustainability-top__bnrs::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.p-sustainability-top__bnrs__inner {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  max-width: 1180px;
}

@media screen and (max-width: 1280px) {
  .p-sustainability-top__bnrs__inner {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner {
    padding: 0;
  }
}

.p-sustainability-top__bnrs__inner ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul {
    flex-direction: column;
  }
}

.p-sustainability-top__bnrs__inner ul.sustainability-bnrs__upper {
  justify-content: flex-start;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul.sustainability-bnrs__upper {
    margin-bottom: 0;
  }
}

.p-sustainability-top__bnrs__inner ul.sustainability-bnrs__upper li {
  width: 46%;
  margin-right: 8%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul.sustainability-bnrs__upper li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 5%;
  }
}

.p-sustainability-top__bnrs__inner ul.sustainability-bnrs__upper li:nth-child(2n) {
  margin-right: 0;
}

.p-sustainability-top__bnrs__inner ul.sustainability-bnrs__bottom {
  margin-bottom: -50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul.sustainability-bnrs__bottom {
    margin-bottom: -5%;
  }
}

.p-sustainability-top__bnrs__inner ul.sustainability-bnrs__bottom li {
  width: 30%;
  margin-right: 5%;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul.sustainability-bnrs__bottom li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 5%;
  }
}

.p-sustainability-top__bnrs__inner ul.sustainability-bnrs__bottom li:nth-child(3n) {
  margin-right: 0;
}

.p-sustainability-top__bnrs__inner ul a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  transition: opacity .3s;
  border-radius: 10px;
  overflow: hidden;
}

.p-sustainability-top__bnrs__inner ul a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul a {
    border-radius: 1.5vw;
  }
}

.p-sustainability-top__bnrs__inner ul a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, transparent 0 70%, rgba(0, 0, 0, 0.65));
  pointer-events: none;
}

.p-sustainability-top__bnrs__inner ul a img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: relative;
  height: 200px;
  border-radius: 10px;
  width: 100%;
  height: auto;
  transition-duration: .5s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul a img {
    transition: none;
  }
}

.p-sustainability-top__bnrs__inner ul a img:hover {
  transform: scale(1.2);
  transition-duration: .5s;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul a img:hover {
    transform: scale(1.2);
    transition: none;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul a img {
    height: auto;
    transition: none;
    transform: scale(1);
    border-radius: 1.5vw;
  }
}

.p-sustainability-top__bnrs__inner ul a span {
  display: block;
  position: absolute;
  text-align: right;
  right: 40px;
  bottom: 15px;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  z-index: 2;
  line-height: 1.3;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.8);
}

.p-sustainability-top__bnrs__inner ul a span br:first-of-type {
  display: none;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-top__bnrs__inner ul a span {
    font-size: 18px;
    font-size: 1.8rem;
    font-feature-settings: "palt";
    right: 3vw;
    bottom: 1.5vw;
  }
  .p-sustainability-top__bnrs__inner ul a span br:first-of-type {
    display: block;
  }
  .p-sustainability-top__bnrs__inner ul a span br:last-of-type {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__bnrs__inner ul a span {
    font-size: 4vw;
    right: 6vw;
    bottom: 2.5vw;
  }
  .p-sustainability-top__bnrs__inner ul a span br {
    display: none !important;
  }
  .p-sustainability-top__bnrs__inner ul a span::after {
    width: 1.4vw;
    height: 1.4vw;
    margin-top: -0.6vw;
  }
}

.p-sustainability-top__menu {
  width: 100%;
  max-width: 820px;
  margin: 70px auto;
  padding: 0 10px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__menu {
    margin: 0;
    padding: 10% 5%;
  }
}

.p-sustainability-top__menu ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: -50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__menu ul {
    flex-direction: column;
    margin-bottom: -5%;
  }
}

.p-sustainability-top__menu ul li {
  width: 44%;
  margin-right: 12%;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-top__menu ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 5%;
  }
}

.p-sustainability-top__menu ul li:nth-child(2n) {
  margin-right: 0;
}

.p-sustainability-top__menu ul li a {
  padding: 15px 10px;
  font-size: 18px;
  font-size: 1.8rem;
}

@media screen and (max-width: 425px) {
  .p-sustainability-top__menu ul li a {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-sustainability-statement__intro {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  max-width: 1100px;
  padding: 60px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

@media screen and (max-width: 1280px) {
  .p-sustainability-statement__intro {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-statement__intro {
    padding: 60px 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__intro {
    flex-direction: column;
    padding: 10% 5%;
  }
}

.p-sustainability-statement__intro h2 {
  width: 45%;
  font-size: 42px;
  font-size: 4.2rem;
  font-weight: 700;
  color: #1d4c9b;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-statement__intro h2 {
    font-size: 32px;
    font-size: 3.2rem;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__intro h2 {
    width: 100%;
    font-size: 5vw;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-statement__intro h2 {
    font-size: 6vw;
  }
}

.p-sustainability-statement__intro figure {
  width: 48%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__intro figure {
    width: 80%;
  }
}

.p-sustainability-statement__intro figure img {
  width: 100%;
}

.p-sustainability-statement__container {
  position: relative;
  padding: 60px 0;
}

.p-sustainability-statement__container::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container {
    padding: 10% 5%;
  }
}

.p-sustainability-statement__container h3 {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 700;
  color: #1d4c9b;
  text-align: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container h3 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 5%;
  }
}

.p-sustainability-statement__container .statement-sec01 {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 60px;
}

@media screen and (max-width: 1280px) {
  .p-sustainability-statement__container .statement-sec01 {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container .statement-sec01 {
    padding: 0;
    flex-direction: column;
    margin-bottom: 12%;
  }
}

.p-sustainability-statement__container .statement-sec01 > div {
  width: 47%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container .statement-sec01 > div {
    width: 100%;
  }
}

.p-sustainability-statement__container .statement-sec01 > div p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container .statement-sec01 > div p {
    margin-bottom: 5%;
  }
}

.p-sustainability-statement__container .statement-sec01 > div p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container .statement-sec01 > div:last-child {
    margin-top: 5%;
  }
}

.p-sustainability-statement__container .statement-sec01 > div:last-child p:last-of-type {
  text-align: right;
}

.p-sustainability-statement__container .statement-sec01 > div:last-child p:last-of-type span {
  font-size: 140%;
}

.p-sustainability-statement__container .statement-sec02 {
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding-bottom: 80px;
}

@media screen and (max-width: 1280px) {
  .p-sustainability-statement__container .statement-sec02 {
    padding: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container .statement-sec02 {
    padding: 5%;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-statement__container .statement-sec02 {
    padding: 60px 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container .statement-sec02 {
    padding: 6% 5% 8%;
  }
}

.p-sustainability-statement__container .statement-sec02 h4 {
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: 700;
  color: #1d4c9b;
  text-align: center;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container .statement-sec02 h4 {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.4;
    margin-bottom: 7%;
  }
}

.p-sustainability-statement__container .statement-sec02 figure {
  width: auto;
  margin: 0 auto;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-sustainability-statement__container .statement-sec02 figure {
    width: 100%;
  }
  .p-sustainability-statement__container .statement-sec02 figure img {
    width: 100%;
  }
}

.p-sustainability-menu {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.p-sustainability-menu ul {
  max-width: 1180px;
}

.p-sustainability-menu ul li a {
  display: flex;
  align-items: center;
  height: 75px;
  padding: 10px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-menu ul li a {
    height: auto;
    padding: 4%;
  }
  .p-sustainability-menu ul li a br {
    display: none;
  }
}

.p-sustainability-menu.relation {
  margin-top: 80px;
}

.p-sustainability-menu.relation li a {
  font-feature-settings: "palt";
  letter-spacing: 0.01em;
  padding-right: 4.5rem;
}

.p-sustainability-menu.relation li a .br {
  display: block;
}

@media screen and (max-width: 767px) {
  .p-sustainability-menu.relation li a .br {
    display: none;
  }
}

@media screen and (max-width: 1024px) {
  .p-sustainability-menu.relation {
    margin-top: 10%;
  }
}

.p-sustainability-menu.relation .relation-wh {
  width: 425px;
  margin: 70px auto 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-menu.relation .relation-wh {
    width: 64%;
    margin-top: 10%;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-menu.relation .relation-wh {
    width: 100%;
  }
}

.p-sustainability-menu.relation .relation-wh a {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 15px 10px;
}

@media screen and (max-width: 480px) {
  .p-sustainability-menu.relation .relation-wh a {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 480px) {
  .p-sustainability-menu.relation .relation-wh a.as-btn {
    font-size: 14px;
    font-feature-settings: "palt";
  }
}

.p-sustainability-menu.relation .relation-wh a::after {
  background: url("../images/sustainability/common/Icon-arrow_circle.svg") no-repeat left center/contain;
  width: 18px;
  height: 18px;
  border: none;
  transform: none;
  margin-top: -9px;
}

@media screen and (max-width: 480px) {
  .p-sustainability-menu.relation .relation-wh a::after {
    right: 1rem;
  }
}

.p-sustainability-others {
  background: #5d89c7;
  padding: 40px 10px;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-others {
    padding: 4% 5%;
    margin-top: 0;
  }
}

.p-sustainability-others .p-page-menu {
  padding: 0;
}

.p-sustainability-others .toggle-input {
  display: none;
}

.p-sustainability-others .toggle-ttl,
.p-sustainability-others .toggle-contents {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.4s;
}

.p-sustainability-others .toggle-ttl {
  display: block;
  position: relative;
  color: #fff;
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: bold;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .p-sustainability-others .toggle-ttl {
    font-size: 25px;
    font-size: 2.5rem;
  }
}

.p-sustainability-others .toggle-ttl::after, .p-sustainability-others .toggle-ttl::before {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  width: 2px;
  height: 0.8em;
  margin-top: -0.4em;
  background-color: #fff;
  transition: all 0.4s;
}

@media screen and (max-width: 767px) {
  .p-sustainability-others .toggle-ttl::after, .p-sustainability-others .toggle-ttl::before {
    right: 0;
  }
}

.p-sustainability-others .toggle-ttl::after {
  transform: rotate(90deg);
}

.p-sustainability-others .toggle-contents {
  max-height: 0;
  overflow: hidden;
}

.p-sustainability-others .toggle-input:checked + .toggle-ttl + .toggle-contents {
  max-height: 320px;
  transition: all 0.4s;
  padding-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-others .toggle-input:checked + .toggle-ttl + .toggle-contents {
    max-height: 200vw;
    padding-top: 5%;
    transition: all 0.8s;
  }
}

.p-sustainability-others .toggle-input:checked + .toggle-ttl::before {
  transform: rotate(90deg) !important;
}

.p-sustainability-about__mv {
  padding: 60px 10px 80px;
  text-align: center;
}

.p-sustainability-about__mv img {
  width: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-about__mv {
    padding: 8% 5% 10%;
  }
  .p-sustainability-about__mv img {
    width: 100%;
  }
}

.p-sustainability-about__nav {
  position: relative;
  padding: 60px 10px;
}

.p-sustainability-about__nav::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-sustainability-about__nav {
    padding: 10% 5%;
  }
}

.p-sustainability-list--type01 {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: -40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01 {
    flex-direction: column;
    margin-bottom: -8%;
  }
}

.p-sustainability-list--type01 li {
  width: 48%;
  margin-right: 4%;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01 li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-sustainability-list--type01 li:nth-child(2n) {
  margin-right: 0;
}

.p-sustainability-list--type01 li a {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  transition: opacity .3s;
  padding: 30px 5% 40px;
  min-height: 170px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01 li a {
    padding: 5%;
  }
}

.p-sustainability-list--type01 li a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01 li a {
    padding: 5% 5% 12%;
  }
}

.p-sustainability-list--type01 li a::after {
  content: "";
  display: block;
  background: url("../images/sustainability/common/Icon-arrow_circle.png") no-repeat left center/contain;
  width: 18px;
  height: 18px;
  position: absolute;
  right: 30px;
  bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01 li a::after {
    width: 3vw;
    height: 3vw;
    right: 5%;
    bottom: 3vw;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-list--type01 li a::after {
    width: 5vw;
    height: 5vw;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01 li a {
    min-height: inherit;
  }
}

.p-sustainability-list--type01 li a h3 {
  color: #347ec1;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  border-bottom: 1px solid #707070;
  padding-bottom: 15px;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01 li a h3 {
    font-feature-settings: "palt";
    line-height: 1.3;
    letter-spacing: 0.015em;
  }
}

.p-sustainability-list--type01 li a p {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-sustainability-list--type01.menu-only a {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  transition: opacity .3s;
  padding: 25px 8vw 25px 5%;
  min-height: inherit;
  padding: 25px 4vw 25px 5%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01.menu-only a {
    padding: 5%;
  }
}

.p-sustainability-list--type01.menu-only a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01.menu-only a {
    padding: 5% 10vw 5% 5%;
  }
}

.p-sustainability-list--type01.menu-only a::after {
  content: "";
  display: block;
  background: url("../images/sustainability/common/Icon-arrow_circle.png") no-repeat left center/contain;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 50%;
  margin-top: -9px;
  right: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01.menu-only a::after {
    width: 3vw;
    height: 3vw;
    right: 5%;
    margin-top: -1.5vw;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-list--type01.menu-only a::after {
    width: 5vw;
    height: 5vw;
    margin-top: -2.5vw;
  }
}

@media screen and (max-width: 992px) {
  .p-sustainability-list--type01.menu-only a {
    padding: 5% 8vw 5% 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01.menu-only a {
    padding: 5% 10vw 5% 5%;
  }
}

.p-sustainability-list--type01.menu-only h3 {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}

.p-sustainability-list--type01 + .p-sustainability-list--type01 {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-list--type01 + .p-sustainability-list--type01 {
    margin-top: 8%;
  }
}

.p-sustainability-asmanagement__btn {
  width: 360px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asmanagement__btn {
    width: 100%;
  }
}

.p-sustainability-asmanagement__list01 {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}

.p-sustainability-asmanagement__list01 > li {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asmanagement__list01 > li {
    font-size: 17px;
    font-size: 1.7rem;
    margin-bottom: 3%;
  }
}

.p-sustainability-asmanagement__list01 > li:last-child {
  margin-bottom: 0;
}

.p-sustainability-asmanagement .asmanagement-slogan {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 900px;
  margin: 50px auto 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asmanagement .asmanagement-slogan {
    flex-direction: column;
    margin-top: 8%;
  }
}

.p-sustainability-asmanagement .asmanagement-slogan > div {
  width: 50%;
  height: 100%;
  padding-right: 5%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asmanagement .asmanagement-slogan > div {
    width: 100%;
    height: inherit;
    padding-right: 0;
  }
}

.p-sustainability-asmanagement .asmanagement-slogan > div dl {
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asmanagement .asmanagement-slogan > div dl {
    margin-bottom: 6.66%;
  }
}

.p-sustainability-asmanagement .asmanagement-slogan > div dl:last-child {
  margin-bottom: 0;
}

.p-sustainability-asmanagement .asmanagement-slogan > div dl dt {
  color: #5ea625;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 15px;
  text-align: left;
}

.p-sustainability-asmanagement .asmanagement-slogan > div dl dd p {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
}

.p-sustainability-asmanagement .asmanagement-slogan > div:first-child dt,
.p-sustainability-asmanagement .asmanagement-slogan > div:first-child dd p {
  font-size: 24px;
  font-size: 2.4rem;
  text-align: center;
  color: #5ea625;
  font-weight: 500;
}

.p-sustainability-asmanagement .asmanagement-slogan > div:first-child dt {
  letter-spacing: 1px;
}

@media screen and (max-width: 480px) {
  .p-sustainability-asmanagement .asmanagement-slogan > div:first-child dd p {
    font-size: 21px;
    font-size: 2.1rem;
  }
}

.p-sustainability-asmanagement .asmanagement-slogan > div:last-child {
  padding-right: 0;
  border-left: 5px solid #5ea625;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asmanagement .asmanagement-slogan > div:last-child {
    border-left: none;
    margin-top: 6%;
    padding-top: 6%;
    border-top: 5px solid #5ea625;
  }
}

.p-sustainability-asmanagement .asmanagement-slogan > div:last-child dl {
  padding-left: 50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asmanagement .asmanagement-slogan > div:last-child dl {
    padding-left: 0;
  }
}

.p-sustainability-asmanagement .asmanagement-slogan > div:last-child dl:first-child {
  padding-bottom: 30px;
  border-bottom: 1px solid #5ea625;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asmanagement .asmanagement-slogan > div:last-child dl:first-child {
    padding-bottom: 5%;
  }
}

.p-sustainability-asmanagement .c-table--type03 + p {
  text-indent: -1em;
  margin-left: 1em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}

.p-sustainability-askeythemes__txt01 {
  width: 100%;
  max-width: 1200px;
  margin: 60px auto 40px;
  padding: 0 10px;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .p-sustainability-askeythemes__txt01 {
    margin-top: 8% auto 5%;
    padding: 0 5%;
  }
}

@media screen and (max-width: 1023px) {
  .p-sustainability-askeythemes .askeythemes-table {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-askeythemes .askeythemes-table table {
    min-width: 1080px;
  }
}

.p-sustainability-askeythemes .askeythemes-table th {
  width: auto;
  font-size: 15px;
  font-size: 1.5rem;
  vertical-align: middle;
  padding: 0 5px 15px 5px;
}

.p-sustainability-askeythemes .askeythemes-table th:nth-child(1) {
  width: 20%;
}

.p-sustainability-askeythemes .askeythemes-table th:nth-child(2) {
  width: 23%;
}

.p-sustainability-askeythemes .askeythemes-table td {
  background: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  padding: 25px 10px;
}

.p-sustainability-askeythemes .askeythemes-table td ul li {
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 10px;
}

.p-sustainability-askeythemes .askeythemes-table td ul li:last-child {
  margin-bottom: 0;
}

.p-sustainability-askeythemes .askeythemes-table td p {
  font-size: 15px;
  font-size: 1.5rem;
  font-feature-settings: "palt";
}

.p-sustainability-askeythemes .askeythemes-table td p a {
  color: #1968ff;
  text-decoration: underline;
}

.p-sustainability-askeythemes .askeythemes-table td p a:hover {
  text-decoration: none;
}

.p-sustainability-askeythemes .askeythemes-icon {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-end;
  width: auto;
}

.p-sustainability-askeythemes .askeythemes-icon li {
  width: 70px;
  margin-right: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-askeythemes .askeythemes-icon li {
    width: 10vw;
    margin-right: 2%;
  }
}

.p-sustainability-askeythemes .askeythemes-icon li:last-child {
  margin-right: 0;
}

.p-sustainability-askeythemes .askeythemes-icon li img {
  width: 100%;
}

.p-sustainability-askeythemes__sec03 .c-table--type02 th {
  width: calc(100% / 3);
}

.p-sustainability-askeythemes__sec03 .c-table--type02 th:nth-child(3) {
  width: 40%;
}

.p-sustainability-asinitiatives .asinitiatives-box {
  align-items: center;
}

.p-sustainability-asinitiatives .asinitiatives-box > div {
  width: calc(100% - 204px);
}

@media screen and (max-width: 767px) {
  .p-sustainability-asinitiatives .asinitiatives-box > div {
    order: 2;
    width: 100%;
  }
}

.p-sustainability-asinitiatives .asinitiatives-box > div p {
  margin-bottom: 30px;
}

.p-sustainability-asinitiatives .asinitiatives-box > div p:last-of-type {
  margin-bottom: 0;
}

.p-sustainability-asinitiatives .asinitiatives-box figure {
  width: 174px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asinitiatives .asinitiatives-box figure {
    order: 1;
    margin: 0 auto 6%;
  }
}

.p-sustainability-asinitiatives .asinitiatives-box figure img {
  width: 100%;
}

.p-sustainability-asinitiatives__btn {
  width: 460px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-asinitiatives__btn {
    width: 100%;
  }
}

.p-sustainability-asinitiatives__btn a {
  font-size: 16px;
  font-size: 1.6rem;
  font-feature-settings: "palt";
}

@media screen and (max-width: 480px) {
  .p-sustainability-asinitiatives__btn a {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-sustainability-products {
  /* 素材・成形技術 */
}

.p-sustainability-products__intro {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: 80px 10px 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__intro {
    padding: 8% 5%;
  }
}

.p-sustainability-products__intro > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__intro > div {
    flex-direction: column;
    margin-bottom: 6%;
  }
}

.p-sustainability-products__intro > div > div {
  width: 55%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__intro > div > div {
    width: 100%;
  }
}

.p-sustainability-products__intro > div > div p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 30px;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__intro > div > div p {
    margin-bottom: 5%;
  }
}

.p-sustainability-products__intro > div > div p:last-child {
  margin-bottom: 0;
}

.p-sustainability-products__intro > div figure {
  width: 41%;
  max-width: 480px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__intro > div figure {
    width: 80%;
    margin: 5% auto 0;
  }
}

.p-sustainability-products__intro > div figure img {
  width: 100%;
}

.p-sustainability-products__intro > div + p {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-sustainability-products__nav {
  position: relative;
  padding: 60px 10px 80px;
}

.p-sustainability-products__nav::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__nav {
    padding: 8% 5%;
  }
}

.p-sustainability-products__nav ul li a {
  min-height: 210px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__nav ul li a {
    min-height: inherit;
  }
}

.p-sustainability-products__nav02 {
  padding: 60px 10px 80px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__nav02 {
    padding: 5%;
  }
}

.p-sustainability-products__nav02 ul li {
  width: 100%;
  margin-right: 0;
}

.p-sustainability-products__nav02 ul li:last-child {
  margin-bottom: 0;
}

.p-sustainability-products__nav02 ul li a {
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__nav02 ul li a {
    padding: 5% 5% 12%;
  }
}

.p-sustainability-products__container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  margin-top: 60px;
  /* シール技術 */
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__container {
    padding: 5%;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-products__container {
    padding: 0 10px;
  }
}

.p-sustainability-products__container p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 1280px) {
  .p-sustainability-products__container {
    padding: 5% 20px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__container {
    margin-top: 10%;
    padding: 10% 5%;
  }
}

.p-sustainability-products__container figure {
  margin: 30px auto 0;
  text-align: center;
}

.p-sustainability-products__container__box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  max-width: 1140px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__container__box {
    flex-direction: column;
  }
}

.p-sustainability-products__container__box figure {
  width: 35%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__container__box figure {
    width: 64%;
    margin: 5% auto 0;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-products__container__box figure {
    width: 80%;
  }
}

.p-sustainability-products__container__box figure img {
  width: 100%;
}

.p-sustainability-products__container__box > div {
  width: 60%;
  margin-right: 5%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__container__box > div {
    width: 100%;
    margin-right: 0;
  }
}

.p-sustainability-products__container .p-sustainability-products__inner__box__txt {
  width: 60%;
  margin-right: 5%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__container .p-sustainability-products__inner__box__txt {
    width: 100%;
    margin-right: 0;
  }
}

.p-sustainability-products__container .p-sustainability-products__inner__box__photo {
  width: 30%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__container .p-sustainability-products__inner__box__photo {
    width: 64%;
    margin: 5% auto 0;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-products__container .p-sustainability-products__inner__box__photo {
    width: 80%;
  }
}

.p-sustainability-products__container .p-sustainability-products__inner__box__photo figure {
  width: 100%;
  max-width: 250px;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-products__container .p-sustainability-products__inner__box__photo figure {
    margin-bottom: 4%;
  }
}

.p-sustainability-environment__mv {
  padding: 60px 10px;
  text-align: center;
}

.p-sustainability-environment__mv img {
  width: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-environment__mv {
    padding: 8% 5%;
  }
  .p-sustainability-environment__mv img {
    width: 100%;
  }
}

.p-sustainability-environment__nav {
  position: relative;
  padding: 60px 10px 80px;
}

.p-sustainability-environment__nav::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-sustainability-environment__nav {
    padding: 8% 5%;
  }
}

.p-sustainability-envwarming p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 480px) {
  .p-sustainability-envwarming p {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.p-sustainability-envwarming__container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__container {
    padding: 5%;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-envwarming__container {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-envwarming__container {
    padding: 5% 20px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__container {
    margin-top: 10%;
    padding: 10% 5%;
  }
}

.p-sustainability-envwarming__intro {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__intro {
    margin-bottom: 10%;
  }
}

.p-sustainability-envwarming__intro p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 30px;
}

.p-sustainability-envwarming__intro p:last-child {
  margin-bottom: 0;
}

.p-sustainability-envwarming__intro figure {
  width: 370px;
  margin: 30px auto 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__intro figure {
    width: 65%;
    margin-top: 5%;
  }
}

.p-sustainability-envwarming__intro figure img {
  width: 100%;
}

.p-sustainability-envwarming__box {
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__box {
    margin-bottom: 10%;
  }
}

.p-sustainability-envwarming__box:last-of-type {
  margin-bottom: 0;
}

.p-sustainability-envwarming__box h3 + p {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__box h3 + p {
    margin-bottom: 5%;
  }
}

.p-sustainability-envwarming__box .list-indent li {
  font-size: 16px;
  font-size: 1.6rem;
  margin-left: 1em;
  text-indent: -1em;
  line-height: 1.6;
  margin-bottom: 0.75em;
}

.p-sustainability-envwarming__box .list-indent li:last-child {
  margin-bottom: 0;
}

.p-sustainability-envwarming__box .list-indent li ol {
  margin-top: 0.5em;
}

.p-sustainability-envwarming__box .list-indent.no-indent > li {
  margin-left: inherit;
  text-indent: inherit;
}

.p-sustainability-envwarming__box figure {
  width: auto;
  margin: 0 auto;
}

.p-sustainability-envwarming__box figure img {
  width: 100%;
}

.p-sustainability-envwarming__box#envwarming-sec01 figure {
  width: 100%;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__box#envwarming-sec01 figure {
    margin-top: 8%;
  }
}

.p-sustainability-envwarming__box#envwarming-sec02 figure {
  width: 100%;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__box#envwarming-sec02 figure {
    margin-top: 8%;
  }
}

.p-sustainability-envwarming__box#envwarming-sec03 figure {
  width: 80%;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__box#envwarming-sec03 figure {
    margin-bottom: 5%;
  }
}

.p-sustainability-envwarming__box#envwarming-sec04 figure {
  width: 80%;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__box#envwarming-sec04 figure {
    margin-top: 5%;
  }
}

.p-sustainability-envwarming__box .envwarming-sec__dl {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__box .envwarming-sec__dl {
    margin-bottom: 5%;
  }
}

.p-sustainability-envwarming__box .envwarming-sec__dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 0.5em;
}

.p-sustainability-envwarming__box .envwarming-sec__dl dd {
  margin-left: 1em;
}

.p-sustainability-envwarming__box .envwarming-sec__dl dd li span {
  display: block;
  font-weight: bold;
  color: #496eae;
}

.p-sustainability-envwarming table thead {
  border-bottom: none;
}

.p-sustainability-envwarming table th {
  width: 22.5%;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  vertical-align: middle;
  font-feature-settings: "palt";
  background: #eef3f9;
  border: 1px solid #e6e6e6;
  border-bottom: 1px solid #004da1;
  padding: 7px 5px;
}

.p-sustainability-envwarming table th:first-child {
  width: 10%;
}

.p-sustainability-envwarming table th br {
  display: none;
}

@media screen and (max-width: 1100px) {
  .p-sustainability-envwarming table th br {
    display: block;
  }
}

.p-sustainability-envwarming table td {
  padding: 15px 10px;
  font-size: 14px;
  font-size: 1.4rem;
  font-feature-settings: "palt";
}

.p-sustainability-envwarming table td:first-child {
  vertical-align: middle;
  text-align: center;
  color: #496eae;
  font-weight: bold;
}

.p-sustainability-envwarming table td ul li {
  font-size: 14px !important;
}

.p-sustainability-envwarming table td ul li span {
  color: #000;
  font-weight: bold;
}

.p-sustainability-envwarming table td ul li ul {
  margin-top: 0.5em;
}

.p-sustainability-envwarming table td ul.indent2 li.li-indent {
  margin-left: 1.5em;
  text-indent: -1.5em;
}

.p-sustainability-envwarming table td p {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.p-sustainability-envwarming .sustainability-table__note {
  border: 1px solid #e6e6e6;
  padding: 5px 10px;
  width: 80%;
  max-width: 520px;
  margin-left: auto;
}

@media screen and (max-width: 992px) {
  .p-sustainability-envwarming .sustainability-table__note {
    max-width: 100%;
    width: 100%;
    padding: 4%;
  }
}

.p-sustainability-envwarming .sustainability-table__note dl dt {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 5px;
}

.p-sustainability-envwarming .sustainability-table__note dl dd li {
  font-size: 12px;
  font-size: 1.2rem;
  margin-bottom: 5px;
}

.p-sustainability-envwarming .sustainability-table__note dl dd li span {
  color: #000;
  font-weight: bold;
}

.p-sustainability-envwarming__btn {
  width: 640px;
  margin: 40px auto 0;
}

.p-sustainability-envwarming__btn em {
  display: inline-block;
  margin-left: 0.5em;
  font-size: 85%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming__btn {
    width: 100%;
    margin-top: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-envwarming .c-table--scroll table {
    min-width: 800px;
  }
  .p-sustainability-envwarming .c-table--scroll + .envwarming-ttl-box {
    margin-top: 10% !important;
  }
}

.p-sustainability-envwarming .p-product__service__links01 li {
  width: 100%;
}

.p-sustainability-envwarming .p-product__service__links01 li a {
  color: #004da1;
}

.p-sustainability-envwarming .p-product__service__links01 li a::after {
  display: none;
}

.p-sustainability-envwarming .envwarming-ttl-box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-bottom: 10px;
}

@media screen and (max-width: 992px) {
  .p-sustainability-envwarming .envwarming-ttl-box {
    display: block;
    margin-bottom: 3%;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-envwarming .envwarming-ttl-box {
    margin-top: 8%;
  }
}

.p-sustainability-envwarming .envwarming-ttl-box h5 {
  margin-bottom: 10px;
}

.p-sustainability-envgroup__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: -40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__list {
    margin-bottom: -8%;
  }
}

.p-sustainability-envgroup__list li {
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__list li {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 8%;
  }
  .p-sustainability-envgroup__list li:nth-child(2n) {
    margin-right: 0;
  }
}

.p-sustainability-envgroup__list li:nth-child(4n) {
  margin-right: 0;
}

.p-sustainability-envgroup__list li a {
  display: block;
  transition: opacity .3s;
}

.p-sustainability-envgroup__list li a:hover {
  opacity: .7;
}

.p-sustainability-envgroup__list li figure {
  margin-bottom: 15px;
}

.p-sustainability-envgroup__list li figure img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__list li figure {
    margin-bottom: 2.5%;
  }
}

.p-sustainability-envgroup__list li span {
  position: relative;
  display: block;
  padding-left: 26px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #347ec1;
  font-feature-settings: "palt";
}

.p-sustainability-envgroup__list li span::before {
  content: "";
  display: block;
  background: url("../images/sustainability/common/Icon-arrow_circle.svg") no-repeat left top/contain;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 0.2em;
  left: 0;
}

.p-sustainability-envgroup__outline {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

.p-sustainability-envgroup__graph {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  max-width: 940px;
  margin: 0 auto -5%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__graph {
    margin-bottom: -8%;
  }
}

.p-sustainability-envgroup__graph li {
  width: 47.5%;
  margin-right: 5%;
  margin-bottom: 5%;
}

.p-sustainability-envgroup__graph li:nth-child(2n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__graph li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-sustainability-envgroup__graph li dl dt {
  background: #347ec1;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 10px;
  text-align: center;
  border-radius: 5px;
  padding: 6px 10px;
}

.p-sustainability-envgroup__graph li dl dd img {
  display: block;
  width: 70%;
  height: auto;
  margin: 0 auto;
}

@media screen and (max-width: 1024px) {
  .p-sustainability-envgroup__graph li dl dd img {
    width: 80%;
  }
}

.p-sustainability-envgroup .envgroup-site_img {
  text-align: center;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}

.p-sustainability-envgroup .envgroup-site_img img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup .envgroup-site_img {
    max-width: 100%;
    width: 75%;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-envgroup .envgroup-site_img {
    width: 100%;
  }
}

.p-sustainability-envgroup__site--txt h4 {
  font-feature-settings: "palt";
  margin-bottom: 10px !important;
}

.p-sustainability-envgroup__site--txt p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__site--txt p {
    margin-bottom: 4%;
  }
}

.p-sustainability-envgroup__site--txt p:last-of-type {
  margin-bottom: 0;
}

.p-sustainability-envgroup__message {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__message {
    flex-direction: column;
  }
}

.p-sustainability-envgroup__message > div {
  width: 70%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__message > div {
    order: 2;
    width: 100%;
    margin-top: 5%;
  }
}

.p-sustainability-envgroup__message figure {
  width: 25%;
  margin-left: 5%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envgroup__message figure {
    order: 1;
    width: 40%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-envgroup__message figure {
    width: 65%;
  }
}

.p-sustainability-envgroup__message figure img {
  width: 100%;
}

.p-sustainability-envgroup__message figure figcaption {
  display: block;
  line-height: 1.6;
  font-size: 14px;
  font-size: 1.4rem;
  font-feature-settings: "palt";
  margin-top: 15px;
  text-align: right;
}

.p-sustainability-envgroup__message .list-indent li {
  font-size: 16px;
  font-size: 1.6rem;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 0.5em;
  line-height: 1.3;
}

.p-sustainability-envgroup__message .list-indent li:last-child {
  margin-bottom: 0;
}

.p-sustainability-outline dl {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: nowrap;
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  margin-bottom: 25px;
}

.p-sustainability-outline dl:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-outline dl {
    flex-direction: column;
  }
}

.p-sustainability-outline dl dt {
  font-weight: bold;
  color: #004da1;
  border-bottom: 2px solid #418ac9;
  width: 18%;
  padding: 0 20px 25px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-sustainability-outline dl dt {
    width: 100%;
    border-bottom: none;
    text-align: left;
    padding: 0 0 1em;
  }
}

.p-sustainability-outline dl dd {
  border-bottom: 1px solid #e6e6e6;
  width: 82%;
  padding: 0 20px 25px;
}

@media screen and (max-width: 992px) {
  .p-sustainability-outline dl dd {
    padding: 0 2rem 1em;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-outline dl dd {
    width: 100%;
    padding: 0 0 1em;
  }
}

.p-sustainability-envplan #envwarming_plan-sec01 {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envplan #envwarming_plan-sec01 {
    margin-bottom: 10%;
  }
}

.p-sustainability-envplan #envwarming_plan-sec01 h3 + p {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envplan #envwarming_plan-sec01 h3 + p {
    margin-bottom: 5%;
  }
}

.p-sustainability-envplan #envwarming_plan-sec02 figure {
  width: 100%;
  max-width: 800px;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envplan #envwarming_plan-sec02 figure {
    margin-top: 6%;
  }
}

.p-sustainability-envplan #envwarming_plan-sec02 a {
  color: #42b9f5;
}

.p-sustainability-envplan #envwarming_plan-sec02 .p-product__service__links01 {
  margin-bottom: 0;
}

.p-sustainability-envplan #envwarming_plan-sec02 .p-product__service__links01 li {
  width: auto;
  margin-bottom: 0;
}

.p-sustainability-envplan #envwarming_plan-sec02 .p-product__service__links01 li a {
  color: #004da1;
}

.p-sustainability-envplan #envwarming_plan-sec02 .p-product__service__links01 li a::after {
  display: none;
}

.p-sustainability-envplan #envwarming_plan-sec02 .p-product__service__links01 li a.link-pdf {
  position: relative;
  padding-right: 1em;
}

.p-sustainability-envplan #envwarming_plan-sec02 .p-product__service__links01 li a.link-pdf::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
  margin-top: -2px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envplan #envwarming_plan-sec02 .p-product__service__links01 li a.link-pdf::after {
    margin-top: inherit;
  }
}

@media screen and (max-width: 1023px) {
  .p-sustainability-envplan #envwarming_plan-sec02 .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-envplan #envwarming_plan-sec02 .c-table--scroll table {
    min-width: 1000px;
  }
}

.p-sustainability-envmanage #env_management-sec03 figure {
  width: 100%;
  max-width: 590px;
}

.p-sustainability-envaccount #env_account-sec02 table tbody td:first-child,
.p-sustainability-envaccount #env_account-sec03 table tbody td:first-child,
.p-sustainability-envaccount #env_account-sec04 table tbody td:first-child {
  color: #000;
  font-weight: normal;
}

.p-sustainability-envaccount #env_account-sec04 table thead tr:nth-child(2) th:first-child {
  width: 70% !important;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-envaccount .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-envaccount .c-table--scroll table {
    min-width: 1000px;
  }
}

.p-sustainability-envaccount .c-table--scroll + p {
  margin-top: 20px;
  font-size: 15px;
  font-size: 1.5rem;
  text-indent: -1em;
  margin-left: 1em;
}

.p-sustainability-envproducts p a {
  color: #004da1;
}

.p-sustainability-envproducts p a.link--external::after {
  content: "";
  background: url("../images/common/icon-external_blue.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  margin: -4px 0 0 5px;
  border: none;
  transform: none;
  display: inline-block;
}

.p-sustainability-envproducts #env_products-sec04 > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envproducts #env_products-sec04 > div {
    flex-direction: column;
  }
}

.p-sustainability-envproducts #env_products-sec04 > div > div {
  width: 72%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envproducts #env_products-sec04 > div > div {
    order: 2;
    width: 100%;
  }
}

.p-sustainability-envproducts #env_products-sec04 > div > div p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

.p-sustainability-envproducts #env_products-sec04 > div > div figure {
  width: 10%;
  margin: 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envproducts #env_products-sec04 > div > div figure {
    width: 30%;
  }
}

.p-sustainability-envproducts #env_products-sec04 > div > figure {
  width: 25%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envproducts #env_products-sec04 > div > figure {
    order: 1;
    width: 70%;
    margin: 0 auto 6%;
  }
}

.p-sustainability-envproducts #env_products-sec04 > div > figure img {
  width: 100%;
}

.p-sustainability-envresource #env_resource-sec02 figure,
.p-sustainability-envresource #env_resource-sec04 figure {
  width: 100%;
  max-width: 800px;
}

.p-sustainability-envresource #env_resource-sec02 figure img,
.p-sustainability-envresource #env_resource-sec04 figure img {
  width: 100%;
}

.p-sustainability-envresource #env_resource-sec02 figure {
  max-width: 788px;
}

.p-sustainability-envwaste #env_waste-sec02 figure {
  width: 100%;
  max-width: 680px;
}

.p-sustainability-envwaste #env_waste-sec02 figure img {
  width: 100%;
}

.p-sustainability-envchemical #env_chemical-sec03 figure {
  width: 100%;
}

.p-sustainability-envchemical #env_chemical-sec03 figure img {
  display: block;
  width: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envchemical #env_chemical-sec03 figure img {
    width: 100%;
  }
}

.p-sustainability-envmb #env_material_balance-sec01 figure {
  width: 100%;
  max-width: 860px;
}

.p-sustainability-envmb #env_material_balance-sec01 figure img {
  width: 100%;
}

.p-sustainability-envmb #env_material_balance-sec01 a {
  color: #004da1;
  text-decoration: underline;
}

.p-sustainability-envmb #env_material_balance-sec01 a:hover {
  text-decoration: none;
}

.p-sustainability-envrisk #env_risk-sec01 table thead th:first-child {
  width: 25%;
}

.p-sustainability-envrisk #env_risk-sec01 table tbody td:first-child {
  width: auto;
  color: #000;
  font-weight: normal;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-envrisk #env_risk-sec01 .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-envrisk #env_risk-sec01 .c-table--scroll table {
    min-width: 1000px;
  }
}

.p-sustainability-envdistribution #env_distribution-sec02 figure,
.p-sustainability-envdistribution #env_distribution-sec03 figure {
  width: 100%;
  max-width: 680px;
}

.p-sustainability-envdistribution #env_distribution-sec02 figure img,
.p-sustainability-envdistribution #env_distribution-sec03 figure img {
  width: 100%;
}

.p-sustainability-envbusiness__container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envbusiness__container {
    padding: 5%;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-envbusiness__container {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-envbusiness__container {
    padding: 5% 20px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-envbusiness__container {
    margin-top: 10%;
    padding: 10% 5%;
  }
}

.p-sustainability-envbusiness__container p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

.p-sustainability-envbusiness__intro figure {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}

.p-sustainability-envbusiness__intro figure img {
  width: 100%;
}

.p-sustainability-envpolicy #policy-sec04 table thead th:first-child {
  width: 16%;
}

.p-sustainability-envpolicy #policy-sec04 table tbody td:first-child {
  width: auto;
  color: #000;
  font-weight: normal;
}

.p-sustainability-envpolicy #policy-sec04 table tbody td br {
  display: block;
}

.p-sustainability-envpolicy #policy-sec04 table tbody a {
  color: #004da1;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-envpolicy #policy-sec04 .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-envpolicy #policy-sec04 .c-table--scroll table {
    min-width: 1000px;
  }
}

.p-sustainability-envstandard #standard-sec01 table thead th:nth-child(1) {
  width: 28%;
}

.p-sustainability-envstandard #standard-sec01 table thead th:nth-child(3) {
  width: 67%;
}

.p-sustainability-envstandard #standard-sec01 table tbody td:first-child {
  width: auto;
  color: #000;
  font-weight: normal;
}

.p-sustainability-envstandard #standard-sec01 table tbody td:last-child {
  text-align: left;
}

.p-sustainability-envstandard #standard-sec01 table tbody td br {
  display: block;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-envstandard #standard-sec01 .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-envstandard #standard-sec01 .c-table--scroll table {
    min-width: 1000px;
  }
}

.p-sustainability-envpdf #pdf-sec01 > div,
.p-sustainability-envpdf #pdf-sec02 > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envpdf #pdf-sec01 > div,
  .p-sustainability-envpdf #pdf-sec02 > div {
    flex-direction: column;
  }
}

.p-sustainability-envpdf #pdf-sec01 > div > div,
.p-sustainability-envpdf #pdf-sec02 > div > div {
  width: 72%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envpdf #pdf-sec01 > div > div,
  .p-sustainability-envpdf #pdf-sec02 > div > div {
    order: 2;
    width: 100%;
  }
}

.p-sustainability-envpdf #pdf-sec01 > div p,
.p-sustainability-envpdf #pdf-sec02 > div p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 20px;
}

.p-sustainability-envpdf #pdf-sec01 > div p .pdf-icon,
.p-sustainability-envpdf #pdf-sec02 > div p .pdf-icon {
  padding-left: 25px;
  background: url(../images/sustainability/environment/pdf/pdf_icon.gif) no-repeat left center;
}

.p-sustainability-envpdf #pdf-sec01 > div p a,
.p-sustainability-envpdf #pdf-sec02 > div p a {
  color: #004da1;
}

.p-sustainability-envpdf #pdf-sec01 > div br,
.p-sustainability-envpdf #pdf-sec02 > div br {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envpdf #pdf-sec01 > div br,
  .p-sustainability-envpdf #pdf-sec02 > div br {
    display: block;
  }
}

.p-sustainability-envpdf #pdf-sec01 > div > figure,
.p-sustainability-envpdf #pdf-sec02 > div > figure {
  width: 25%;
  border: solid 1px #ddd;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envpdf #pdf-sec01 > div > figure,
  .p-sustainability-envpdf #pdf-sec02 > div > figure {
    order: 1;
    width: 50%;
    margin: 0 auto 4%;
  }
}

.p-sustainability-envpdf #pdf-sec02 > div {
  flex-direction: column;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-envpdf #pdf-sec02 > div {
    order: 1;
  }
}

.p-sustainability-envpdf #pdf-sec02 > div p a {
  color: #000;
}

.p-sustainability-social .relation br {
  display: none;
}

@media screen and (max-width: 1080px) {
  .p-sustainability-social .relation br {
    display: block;
  }
}

.p-sustainability-social__container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-social__container {
    padding: 5%;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-social__container {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .p-sustainability-social__container {
    padding: 5% 20px;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-social__container {
    margin-top: 10%;
    padding: 10% 5%;
  }
}

.p-sustainability-social__container p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

.p-sustainability-social__mv {
  padding: 60px 10px 80px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-sustainability-social__mv {
    padding: 8% 5% 10%;
  }
}

.p-sustainability-social__mv img {
  width: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-social__mv img {
    width: 100%;
  }
}

.p-sustainability-social__nav {
  padding: 60px 10px;
  position: relative;
}

.p-sustainability-social__nav::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-sustainability-social__nav {
    padding: 10% 5%;
  }
}

.p-sustainability-humanrights p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

.p-sustainability-humanrights p span {
  display: block;
  font-weight: bold;
}

.p-sustainability-humanrights__sec02 {
  position: relative;
  padding: 60px 10px;
  margin-top: 60px;
}

.p-sustainability-humanrights__sec02::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-sustainability-humanrights__sec02 {
    padding: 10% 5%;
    margin-top: 10%;
  }
}

.p-sustainability-humanrights__sec02 .inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.p-sustainability-humanrights__sec02 .inner h2,
.p-sustainability-humanrights__sec02 .inner h3,
.p-sustainability-humanrights__sec02 .inner p {
  text-align: center;
}

.p-sustainability-humanrights__sec02 .inner ul {
  margin-left: 80px;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-humanrights__sec02 .inner ul {
    margin-left: 0;
  }
}

.p-sustainability-humanrights__sec02 .inner ul li {
  font-size: 16px;
  font-size: 1.6rem;
  margin-left: 1em;
  text-indent: -1em;
  margin-bottom: 30px;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-sustainability-humanrights__sec02 .inner ul li {
    margin-bottom: 4%;
  }
}

.p-sustainability-humanrights__sec02 .inner ul li:last-child {
  margin-bottom: 0;
}

.p-sustainability-humanrights .humanrights-ttl {
  position: relative;
  text-align: center;
  margin-bottom: 70px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-humanrights .humanrights-ttl {
    margin-bottom: 10%;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-humanrights .humanrights-ttl {
    margin-bottom: 13%;
  }
}

.p-sustainability-humanrights .humanrights-ttl::after {
  content: "";
  display: block;
  width: 9rem;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-top: 1rem;
  margin-left: -4.5rem;
  border-bottom: 3px dotted #034fa2;
}

.p-sustainability-initiatives table tr:nth-child(even) {
  background: #fff;
}

.p-sustainability-initiatives table th {
  width: auto;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  vertical-align: middle;
  empty-cells: hide;
  font-feature-settings: "palt";
}

.p-sustainability-initiatives table td {
  padding: 15px 10px;
  font-size: 14px;
  font-size: 1.4rem;
  font-feature-settings: "palt";
  text-align: center;
  vertical-align: middle;
}

.p-sustainability-initiatives table td:first-child {
  vertical-align: middle;
  background: #f9f9f9;
  color: #496eae;
  font-weight: bold;
}

.p-sustainability-initiatives table td p {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.p-sustainability-initiatives table.sustainability-initiatives_table tr td:first-child {
  background: #fff;
  font-weight: normal;
  color: inherit;
}

.p-sustainability-initiatives table#sustainability-initiatives_table01 tr:nth-of-type(2) td:first-child {
  background: #fff;
  font-weight: normal;
  color: inherit;
}

.p-sustainability-initiatives table#sustainability-initiatives_table02 th {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-sustainability-initiatives table#sustainability-initiatives_table02 th {
    display: table-cell;
    width: auto;
  }
}

.p-sustainability-initiatives table#sustainability-initiatives_table02 td {
  background: #fff;
  color: inherit;
}

@media screen and (max-width: 767px) {
  .p-sustainability-initiatives table#sustainability-initiatives_table02 td {
    display: table-cell;
    width: auto;
  }
}

.p-sustainability-safetyhealth__sec01--box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-sustainability-safetyhealth__sec01--box {
    flex-direction: column;
  }
}

.p-sustainability-safetyhealth__sec01--box > div {
  width: 55%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-safetyhealth__sec01--box > div {
    width: 100%;
  }
}

.p-sustainability-safetyhealth__sec01--box figure {
  max-width: 405px;
  width: 35%;
  margin-left: 5%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-safetyhealth__sec01--box figure {
    max-width: 100%;
    width: 70%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-safetyhealth__sec01--box figure {
    width: 85%;
  }
}

.p-sustainability-safetyhealth__sec01 figure img {
  width: 100%;
}

.p-sustainability-safetyhealth .safetyhealth__sec--img {
  width: auto;
  margin: 0 auto;
}

.p-sustainability-safetyhealth .safetyhealth__sec--img img {
  display: block;
  width: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-safetyhealth .safetyhealth__sec--img {
    width: 100%;
  }
  .p-sustainability-safetyhealth .safetyhealth__sec--img img {
    width: 100%;
  }
}

.p-sustainability-procurement__txt {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 10px 20px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-sustainability-procurement__txt {
    padding: 8% 5% 4%;
  }
}

.p-sustainability-procurement .procurement__txt-indent {
  text-indent: -1em;
  margin-left: 1em;
}

.p-sustainability-procurement .list-indent {
  margin-bottom: -0.75em;
}

.p-sustainability-procurement .list-indent li {
  font-size: 16px;
  font-size: 1.6rem;
  text-indent: -1.5em;
  margin-left: 1.5em;
  margin-bottom: 0.75em;
  font-feature-settings: "palt";
}

.p-sustainability-procurement__btn {
  width: 360px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-procurement__btn {
    width: 100%;
  }
}

.p-sustainability-report figure {
  width: 100%;
  margin: 0 auto;
}

.p-sustainability-report figure img {
  width: 100%;
}

.p-sustainability-report__img01 {
  max-width: 480px;
}

.p-sustainability-report__img02 {
  max-width: 980px;
}

.p-sustainability-report__table01 thead th {
  width: auto;
}

.p-sustainability-report__table01 thead th:nth-child(2), .p-sustainability-report__table01 thead th:nth-child(3) {
  width: 16%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-report__table01 thead th {
    font-size: calc(15px + 4 * (100vw - 320px) / 450);
  }
}

.p-sustainability-report__table01 td {
  vertical-align: middle;
  padding: 10px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-report__table01 td {
    padding: 4% 10px;
    font-size: calc(14px + 4 * (100vw - 320px) / 450);
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-report__table01 td p {
    font-size: calc(15px + 4 * (100vw - 320px) / 450);
  }
}

.p-sustainability-report__table01 td p span {
  display: block;
  font-weight: bold;
}

.p-sustainability-report__table01 td p.report_table-txt {
  text-align: center;
}

.p-sustainability-report__table01 td p.report_table-txt em {
  display: block;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .p-sustainability-report__table01 td p.report_table-txt em {
    font-size: calc(17px + 4 * (100vw - 320px) / 450);
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-report .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-report .c-table--scroll table {
    min-width: 800px;
  }
}

.p-sustainability-report .c-table--scroll + p {
  font-size: 18px;
  font-size: 1.8rem;
}

.p-sustainability-report .c-table--scroll + p a {
  color: #004da1;
}

.p-sustainability-report .c-table--scroll + p a:hover {
  text-decoration: underline;
}

.p-sustainability-governance__nav {
  padding: 60px 10px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-sustainability-governance__nav {
    padding: 10% 5%;
  }
}

.p-sustainability-governance__nav ul li a {
  min-height: 260px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-governance__nav ul li a {
    min-height: inherit;
  }
}

.p-sustainability-governance__mv {
  padding: 60px 10px 80px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-sustainability-governance__mv {
    padding: 8% 5% 10%;
  }
}

.p-sustainability-cgovernance figure {
  width: 100%;
  margin: 0 auto;
}

.p-sustainability-cgovernance .p-sustainability-envwarming__btn a {
  font-size: 16px;
  font-size: 1.6rem;
  padding-right: 3em;
}

@media screen and (max-width: 480px) {
  .p-sustainability-cgovernance .p-sustainability-envwarming__btn a {
    font-size: 15px;
    font-size: 1.5rem;
    font-feature-settings: "palt";
  }
}

.p-sustainability-cgovernance .p-sustainability-envwarming__btn a br {
  display: none;
}

@media screen and (max-width: 480px) {
  .p-sustainability-cgovernance .p-sustainability-envwarming__btn a br {
    display: block;
  }
}

.p-sustainability-cgovernance__sec01 .cgovernance-img01 {
  max-width: 1000px;
}

.p-sustainability-cgovernance__sec01 .cgovernance-img02 {
  max-width: 525px;
}

.p-sustainability-cgovernance .cgovernance-table {
  width: 100%;
  border-right: none;
  border-bottom: none;
}

.p-sustainability-cgovernance .cgovernance-table th,
.p-sustainability-cgovernance .cgovernance-table td {
  border: 1px solid #dedede;
  padding: 15px 5px;
  font-size: 13px;
  font-size: 1.3rem;
  text-align: center;
  vertical-align: middle;
  font-feature-settings: "palt";
}

.p-sustainability-cgovernance .cgovernance-table th {
  background: rgba(93, 137, 199, 0.1);
  color: #004da1;
}

.p-sustainability-cgovernance .cgovernance-table tr:nth-child(1) th:first-child {
  width: 160px;
}

@media screen and (max-width: 1024px) {
  .p-sustainability-cgovernance .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-cgovernance .c-table--scroll table {
    min-width: 1100px;
  }
}

.p-sustainability-cgovernance .cgovernance-table02 {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
  border-bottom: none;
  border-right: none;
}

.p-sustainability-cgovernance .cgovernance-table02 th,
.p-sustainability-cgovernance .cgovernance-table02 td {
  border: 1px solid #e6e6e6;
  padding: 15px 20px;
  font-size: 15px;
  font-size: 1.5rem;
  vertical-align: middle;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .p-sustainability-cgovernance .cgovernance-table02 th,
  .p-sustainability-cgovernance .cgovernance-table02 td {
    padding: 15px 10px;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-cgovernance .cgovernance-table02 th,
  .p-sustainability-cgovernance .cgovernance-table02 td {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-sustainability-cgovernance .cgovernance-table02 th {
  background: rgba(93, 137, 199, 0.1);
  color: #004da1;
  width: 30%;
}

.p-sustainability-cgovernance .cgovernance-table02 td {
  padding: 15px 30px;
}

@media screen and (max-width: 480px) {
  .p-sustainability-cgovernance .cgovernance-table02 td {
    padding: 15px 10px;
  }
}

.p-sustainability-cgovernance .cgovernance-table02 td ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

.p-sustainability-cgovernance .cgovernance-table02 td ul li:first-child {
  width: 180px;
}

@media screen and (max-width: 480px) {
  .p-sustainability-cgovernance .cgovernance-table02 td ul li:first-child {
    width: 60%;
  }
}

.p-sustainability-cgovernance .cgovernance-table02 caption {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 15px;
  color: #004da1;
}

.p-sustainability-cgovernance .cgovernance-list {
  margin-bottom: -0.75em;
}

.p-sustainability-cgovernance .cgovernance-list li {
  font-size: 16px;
  font-size: 1.6rem;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 0.75em;
  font-feature-settings: "palt";
}

.p-sustainability-cgovernance .cgovernance-img {
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

.p-sustainability-cgovernance .cgovernance-img figure {
  width: 48%;
}

.p-sustainability-cgovernance .cgovernance-img figure img {
  width: 100%;
}

.p-sustainability-cgovernance .p-company-philosophy__statement figure {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-cgovernance .p-company-philosophy__statement figure {
    margin-bottom: 10%;
  }
}

.p-sustainability-cgovernance .p-company-philosophy__statement figure:last-of-type {
  margin-bottom: 0;
}

.p-sustainability-cgovernance .risk-management-img img {
  display: block;
  width: auto;
  margin: 0 auto;
}

.p-sustainability-cgovernance .risk-management-box dl {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-cgovernance .risk-management-box dl {
    margin-bottom: 5%;
  }
}

.p-sustainability-cgovernance .risk-management-box dl dt {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-cgovernance .risk-management-box dl dt {
    margin-bottom: 2.5%;
  }
}

.p-sustainability-cgovernance .risk-management-box dl dd {
  font-size: 16px;
  font-size: 1.6rem;
}

.p-sustainability-cgovernance .risk-management-box dl dd p {
  padding-left: 1em;
}

.p-sustainability-cgovernance .risk-management-box dl dd ul {
  padding-left: 1em;
}

@media screen and (max-width: 767px) {
  .p-sustainability-cgovernance .risk-management-box dl dd ul {
    padding-left: 0;
  }
}

.p-sustainability-cgovernance .risk-management-box dl dd ul li {
  font-size: 16px;
  font-size: 1.6rem;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 1em;
}

.p-sustainability-cgovernance .risk-management-box dl dd ul li:last-child {
  margin-bottom: 0;
}

.p-sustainability-cgovernance .risk-management-box dl dd ul li::before {
  content: "・";
  display: inline-block;
  margin-left: 1em;
}

.p-sustainability-qa__mv {
  padding: 60px 10px 80px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qa__mv {
    padding: 8% 5% 10%;
  }
}

.p-sustainability-qa__mv img {
  width: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qa__mv img {
    width: 100%;
  }
}

.p-sustainability-qa__nav {
  padding: 60px 10px;
  position: relative;
}

.p-sustainability-qa__nav::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qa__nav {
    padding: 10% 5%;
  }
}

.p-sustainability-qaphi__intro {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 10px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaphi__intro {
    padding: 10% 5%;
  }
}

.p-sustainability-qaphi__intro h2 {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 700;
  color: #1d4c9b;
  text-align: center;
  margin-bottom: 60px;
}

@media screen and (max-width: 1180px) {
  .p-sustainability-qaphi__intro h2 {
    font-size: 3.05vw;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaphi__intro h2 {
    font-size: 4.35vw;
    margin-bottom: 8%;
    text-align: left;
  }
  .p-sustainability-qaphi__intro h2 br {
    display: none;
  }
}

.p-sustainability-qaphi__intro > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaphi__intro > div {
    flex-direction: column;
  }
}

.p-sustainability-qaphi__intro > div figure {
  width: 35%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaphi__intro > div figure {
    order: 1;
    width: 65%;
    margin: 0 auto 5%;
  }
}

.p-sustainability-qaphi__intro > div div {
  width: 60%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaphi__intro > div div {
    order: 2;
    width: 100%;
  }
}

.p-sustainability-qaphi__intro > div div p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

.p-sustainability-qaphi h3 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaphi h3 {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 4%;
  }
}

.p-sustainability-qaphi__table01 th,
.p-sustainability-qaphi__table01 td {
  font-size: 14px;
  font-size: 1.4rem;
}

.p-sustainability-qaphi__table01 th {
  font-size: 15px;
  font-size: 1.5rem;
  width: auto;
  white-space: nowrap;
}

@media screen and (max-width: 564px) {
  .p-sustainability-qaphi__table01 th {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.p-sustainability-qaphi__table01 td.td-bg_white {
  vertical-align: top;
}

.p-sustainability-qaphi__table01 td {
  background: #fff !important;
}

.p-sustainability-qaphi__table01 .td-bg_line {
  position: relative;
}

.p-sustainability-qaphi__table01 .td-bg_line::after {
  content: "";
  display: block;
  background: #e0e0e0;
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  top: 0;
}

.p-sustainability-qaphi .p-sustainability-col__type02 > div:first-child .p-sustainability-qaphi__table01 td.td-bg_white br {
  display: none;
}

@media screen and (max-width: 564px) {
  .p-sustainability-qaphi .p-sustainability-col__type02 > div:first-child .p-sustainability-qaphi__table01 td.td-bg_white br {
    display: block;
  }
}

.p-sustainability-qaphi .qaphi-list01 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

.p-sustainability-qaphi .qaphi-list01 li {
  width: 30%;
}

.p-sustainability-qaphi .qaphi-list01 li img {
  width: 100%;
}

.p-sustainability-qaini__col--type01 {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaini__col--type01 {
    flex-direction: column;
  }
}

.p-sustainability-qaini__col--type01 figure {
  width: 48%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaini__col--type01 figure {
    width: 75%;
    margin: 0 auto 6%;
  }
  .p-sustainability-qaini__col--type01 figure:last-child {
    margin-bottom: 0;
  }
}

.p-sustainability-qaini__col--type01 figure img {
  width: 100%;
}

.p-sustainability-qaini__col--type02 {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: -50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaini__col--type02 {
    flex-direction: column;
    margin-bottom: -5%;
  }
}

.p-sustainability-qaini__col--type02 > figure {
  width: 30%;
  margin-right: 5%;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-qaini__col--type02 > figure {
    width: 75%;
    margin: 0 auto 5% !important;
  }
}

.p-sustainability-qaini__col--type02 > figure:nth-child(3n) {
  margin-right: 0;
}

.p-sustainability-qaini__col--type02 > figure img {
  width: 100%;
}

.p-sustainability-stakeholders {
  /* 地域との対話（社会貢献活動）*/
}

.p-sustainability-stakeholders h3 {
  text-align: left;
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders h3 {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 4%;
  }
}

.p-sustainability-stakeholders .p-product__service__links01 {
  flex-direction: column;
}

.p-sustainability-stakeholders .p-product__service__links01 li {
  width: 100%;
}

.p-sustainability-stakeholders .p-product__service__links01 li a {
  color: #004da1;
}

.p-sustainability-stakeholders .p-product__service__links01 li a::after {
  display: none;
}

.p-sustainability-stakeholders .p-product__service__links01 li a.link--external::after {
  display: inline-block;
}

.p-sustainability-stakeholders .p-product__service__links01 li a.link-pdf::after {
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
  margin-top: -2px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders .p-product__service__links01 li a.link-pdf::after {
    margin-top: inherit;
  }
}

.p-sustainability-stakeholders.stakeholders-employees .c-table--type02 th,
.p-sustainability-stakeholders.stakeholders-employees .c-table--type02 td {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders.stakeholders-employees .c-table--type02 th,
  .p-sustainability-stakeholders.stakeholders-employees .c-table--type02 td {
    font-size: calc(13px + 4 * (100vw - 320px) / 450);
  }
}

.p-sustainability-stakeholders.stakeholders-employees .c-table--type02 th {
  width: auto;
}

.p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_intro-txt {
  width: 100%;
  max-width: 1200px;
  padding: 0 10px;
  margin: 0 auto 50px;
  font-size: 17px;
  font-size: 1.7rem;
  font-feature-settings: "palt";
  letter-spacing: 0.025em;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_intro-txt {
    padding: 0 5%;
    margin-bottom: 7%;
  }
}

.p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_txt01 {
  font-size: 19px;
  font-size: 1.9rem;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_txt01 {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

.p-sustainability-stakeholders.stakeholders-lc .p-sustainability-col__type01 > div {
  width: 67%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders.stakeholders-lc .p-sustainability-col__type01 > div {
    width: 100%;
  }
}

.p-sustainability-stakeholders.stakeholders-lc .p-sustainability-col__type01 figure {
  width: 30.5%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders.stakeholders-lc .p-sustainability-col__type01 figure {
    width: 75%;
  }
}

.p-sustainability-stakeholders.stakeholders-lc .p-sustainability-col__type01 figure img {
  display: block;
  width: auto;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders.stakeholders-lc .p-sustainability-col__type01 figure img {
    width: 100%;
  }
}

.p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_btn {
  width: 365px;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_btn {
    width: 85%;
    margin: 5% auto 0;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_box > div {
    order: 1;
  }
  .p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_box figure {
    order: 2;
    margin-top: 5%;
  }
}

@media screen and (max-width: 425px) {
  .p-sustainability-stakeholders.stakeholders-lc .stakeholders-lc_box figure {
    width: 100%;
  }
}

.p-sustainability-slb #slb-table01 caption {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-sustainability-slb #slb-table01 caption {
    margin-bottom: 0;
    text-align: left;
  }
}

.p-sustainability-slb #slb-table01 tr:nth-child(even) {
  background: #fff;
}

.p-sustainability-slb #slb-table01 th,
.p-sustainability-slb #slb-table01 td {
  font-size: 15px;
  font-size: 1.5rem;
  text-align: center;
  vertical-align: middle;
}

.p-sustainability-slb #slb-table01 th {
  width: auto;
  background: #eef3f9;
  border: 1px solid #e6e6e6;
  padding: 7px 5px;
}

.p-sustainability-slb #slb-table01 td {
  font-size: 15px;
  font-size: 1.5rem;
  padding: 20px 5px;
}

.p-sustainability-slb #slb-table01 td:nth-child(2) {
  white-space: nowrap;
}

@media screen and (max-width: 1024px) {
  .p-sustainability-slb .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-slb .c-table--scroll table {
    min-width: 1100px;
  }
}

.p-sustainability-slb .slb-list01 {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .p-sustainability-slb .slb-list01 {
    flex-direction: column;
  }
}

.p-sustainability-slb .slb-list01 > li {
  width: 48.5%;
  border-bottom: 1px solid #e6e6e6;
  padding: 15px 0;
  font-size: 16px;
  font-size: 1.6rem;
  margin-right: 3%;
}

@media screen and (max-width: 767px) {
  .p-sustainability-slb .slb-list01 > li {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-sustainability-slb .slb-list01 > li {
    margin-right: 0;
  }
}

.p-sustainability-slb .slb-list01 > li:nth-child(2n) {
  margin-right: 0;
}

.p-sustainability-slb .slb-relation_menu {
  width: 100%;
  max-width: 1200px;
  padding: 0 10px;
  margin: 60px auto 80px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-slb .slb-relation_menu {
    padding: 0 5%;
    margin: 8% auto 10%;
  }
}

.p-sustainability-slb .slb-relation_menu ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-bottom: -20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-slb .slb-relation_menu ul {
    flex-direction: column;
    margin-bottom: -4%;
  }
}

.p-sustainability-slb .slb-relation_menu ul > li {
  width: 35%;
  margin-right: 5%;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-slb .slb-relation_menu ul > li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 4%;
  }
}

.p-sustainability-slb .slb-relation_menu ul > li:nth-child(2n) {
  width: 60%;
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-sustainability-slb .slb-relation_menu ul > li:nth-child(2n) {
    width: 100%;
  }
}

.p-sustainability-slb .slb-relation_menu ul > li a {
  position: relative;
  display: block;
  color: #004da1;
  font-size: 16px;
  font-size: 1.6rem;
  font-feature-settings: "palt";
  text-indent: -1em;
  margin-left: 1em;
  text-decoration: underline;
}

.p-sustainability-slb .slb-relation_menu ul > li a:hover {
  text-decoration: none;
}

.p-sustainability-slb .slb-relation_menu ul > li a span {
  position: relative;
}

.p-sustainability-slb .slb-relation_menu ul > li a span::after {
  content: "";
  display: inline-block;
  position: relative;
  top: 0;
  right: -1em;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004da1;
  border-right: 1px solid #004da1;
  transform: rotate(45deg);
}

.p-sustainability-slb .slb-relation_menu ul > li a span.link--external::after {
  background: url("../images/common/icon-external_blue.svg") no-repeat left center/contain;
  width: 13px;
  height: 9px;
  margin-top: -4px;
  border: none;
  transform: none;
}

.p-sustainability-slb .slb-relation_menu ul > li a span.link--pdf::after {
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  margin-top: -13px;
  border: none;
  transform: none;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-slb .slb-relation_menu ul > li a span.link--pdf::after {
    display: block;
    margin-top: 0.25em;
    right: 0;
  }
}

@media screen and (max-width: 1023px) {
  .p-sustainability-slb .slb-relation_menu ul > li a span br {
    display: none;
  }
}

.p-sustainability-slb__outline {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

.p-sustainability-slb__btn {
  width: 100%;
  max-width: 840px;
  margin: 20px auto 0;
}

.p-sustainability-slb__btn a {
  font-size: 15px;
  font-size: 1.5rem;
  padding-right: 4em;
}

.p-sustainability-slb__btn em {
  display: inline-block;
  margin-left: 0.5em;
  font-size: 85%;
}

.p-sustainability-esg .esg-table th,
.p-sustainability-esg .esg-table td {
  font-size: 14px;
  font-size: 1.4rem;
}

.p-sustainability-esg .esg-table th {
  border-bottom: 1px solid #e6e6e6;
  width: auto;
  background-clip: padding-box;
  font-size: 15px;
  font-size: 1.5rem;
}

.p-sustainability-esg .esg-table th:first-child {
  width: 35%;
}

.p-sustainability-esg .esg-table tr td {
  background: #fff !important;
  background-clip: padding-box;
}

.p-sustainability-esg .esg-table thead tr:nth-child(2) th:nth-child(1) {
  width: 10%;
}

.p-sustainability-esg .esg-table sub {
  position: relative;
  top: -0.5em;
}

.p-sustainability-esg__sec02 .esg-table tr:nth-child(even) td, .p-sustainability-esg__sec03 .esg-table tr:nth-child(even) td {
  background-color: #fff;
}

.p-sustainability-esg__note {
  font-size: 1.2rem !important;
  margin-top: 15px;
}

@media screen and (max-width: 1023px) {
  .p-sustainability-esg .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-sustainability-esg .c-table--scroll table {
    min-width: 1100px;
  }
}

.p-sustainability-news__container {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

.p-sustainability-news__container dl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-news__container dl {
    flex-direction: column;
    margin-bottom: 7%;
  }
}

.p-sustainability-news__container dl:last-child {
  margin-bottom: 0;
}

.p-sustainability-news__container dl dt {
  width: 160px;
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .p-sustainability-news__container dl dt {
    width: 100%;
    margin-bottom: 2.5%;
  }
}

.p-sustainability-news__container dl dd {
  width: calc(100% - 190px);
}

@media screen and (max-width: 767px) {
  .p-sustainability-news__container dl dd {
    width: 100%;
  }
}

.p-sustainability-news__container dl dd a {
  display: block;
  transition: opacity .3s;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
}

.p-sustainability-news__container dl dd a:hover {
  opacity: .7;
}

.p-sustainability-news__container dl dd a.link-pdf {
  position: relative;
  padding-right: 1em;
}

.p-sustainability-news__container dl dd a.link-pdf::after {
  content: "";
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  position: absolute;
  margin-left: 0;
  top: inherit;
  margin-top: 2px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-news__container dl dd a.link-pdf::after {
    margin-top: inherit;
  }
}

.p-sustainability-news .p-sustainability-top__pickup {
  padding: 4% 0 !important;
}

.p-sustainability-news .news-list {
  margin-bottom: -50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-news .news-list {
    margin-bottom: -5%;
  }
}

.p-sustainability-news .news-list li {
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-sustainability-news .news-list li {
    margin-bottom: 5%;
  }
}

.p-procurement {
  position: relative;
}

.p-procurement .p-page-menu li a {
  font-feature-settings: "palt";
}

.p-procurement p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

.p-procurement p.palt {
  font-feature-settings: "palt";
}

.p-procurement .procurement-list li {
  font-size: 16px;
  font-size: 1.6rem;
  text-indent: -1em;
  margin-left: 1em;
  line-height: 1.6;
  margin-bottom: 20px;
}

.p-procurement .procurement-list li:last-child {
  margin-bottom: 0;
}

.p-procurement .procurement-list__pdf {
  position: relative;
  color: #004DA1;
  text-decoration: underline;
}

.p-procurement .procurement-list__pdf:hover {
  text-decoration: none;
}

.p-procurement .procurement-list__pdf::after {
  content: "";
  position: absolute;
  display: inline-block;
  background: url("../images/common/icon-pdf.svg") no-repeat left center/contain;
  width: 26px;
  height: 26px;
  top: 50%;
  margin-top: -13px;
}

.p-procurement .procurement-list__pdf::before {
  content: "■";
  position: relative;
}

.p-procurement__wrapper {
  position: relative;
  padding: 60px 0;
}

.p-procurement__wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(244, 244, 244, 0.6);
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

@media screen and (max-width: 767px) {
  .p-procurement__wrapper {
    padding: 10% 5%;
  }
}

.p-procurement__container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-procurement__container {
    padding: 5%;
  }
}

@media screen and (max-width: 1280px) {
  .p-procurement__container {
    padding: 0 10px;
  }
}

@media screen and (max-width: 1280px) {
  .p-procurement__container {
    padding: 5% 20px;
  }
}

@media screen and (max-width: 767px) {
  .p-procurement__container {
    margin-top: 10%;
    padding: 10% 5%;
  }
}

.p-procurement .procurement-table {
  max-width: 940px;
  margin: 0 auto;
}

.p-procurement .procurement-table thead::after {
  background: none;
}

.p-procurement .procurement-table td {
  text-align: left;
  padding: 20px 10px;
}

@media screen and (max-width: 1023px) {
  .p-procurement .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-procurement .c-table--scroll table {
    min-width: 940px;
  }
}

.p-procurement .btn-procurement {
  position: relative;
  display: block;
  width: 100%;
  color: #4958A2;
  border: 1px solid #4958A2;
  padding: 10px;
  text-align: center;
  font-size: 15px;
  font-size: 1.5rem;
  transition: opacity .3s;
  background: #fff;
}

.p-procurement .btn-procurement:hover {
  opacity: .7;
}

.p-procurement .btn-procurement::after {
  content: "";
  display: block;
  background: url("../images/procurement/icon_arrow.png") no-repeat left center/contain;
  width: 10px;
  height: 9px;
  position: absolute;
  top: 50%;
  margin-top: -4px;
  right: 10px;
}

.p-procurement #procurement-sec04 figure {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

.p-procurement #procurement-sec04 figure img {
  width: 100%;
}

.p-procurement #procurement-sec05 .p-sustainability-col__type02 img {
  width: 100%;
}

.p-procurement .procurement-txt_note {
  text-indent: -2em;
  margin-left: 2em;
}

.p-procurement .procurement-txt_note a {
  color: #004DA1;
  text-decoration: underline;
}

.p-procurement .procurement-txt_note a:hover {
  text-decoration: none;
}

.p-procurement #procurement-sec05 .procurement-list li {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 10px;
}

.p-procurement .p-sustainability-ttl__h3 {
  font-feature-settings: "palt";
}

.p-procurement #procurement-sec06 h2 + p {
  text-decoration: underline;
}

.p-procurement #procurement-sec06 h2 + p a {
  color: #1D4C9B;
}

.p-procurement .c-form-body {
  width: 100%;
  max-width: 940px;
  margin: 50px auto 0;
}

@media screen and (max-width: 767px) {
  .p-procurement .c-form-body {
    margin-top: 8%;
  }
}

.p-procurement .c-form-body .input50 {
  width: 60% !important;
}

@media screen and (max-width: 767px) {
  .p-procurement .c-form-body .input50 {
    width: 100% !important;
  }
}

.p-procurement .c-form-body th.v-align {
  vertical-align: top !important;
  padding-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-procurement .c-form-body th.v-align {
    padding-top: 4%;
  }
}

.p-training {
  position: relative;
  /* 技術研修TOP */
  /* バルブの基礎 -集合研修- */
}

.p-training-menu {
  max-width: 1280px;
}

.p-training-menu ul {
  max-width: 1280px;
}

.p-training-menu ul li {
  width: 18.4%;
}

@media screen and (max-width: 767px) {
  .p-training-menu ul li {
    width: 100%;
  }
}

.p-training-menu ul li:nth-child(4n) {
  margin-right: 2%;
}

@media screen and (max-width: 767px) {
  .p-training-menu ul li:nth-child(4n) {
    margin-right: 0;
  }
}

.p-training-menu ul li:nth-child(5n) {
  margin-right: 0;
}

.p-training-menu ul li a {
  justify-content: center;
  text-align: center;
}

@media screen and (max-width: 1023px) {
  .p-training-menu ul li a {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 940px) {
  .p-training-menu ul li a {
    font-size: 1.4vw;
  }
}

@media screen and (max-width: 767px) {
  .p-training-menu ul li a {
    font-size: 15px;
    font-size: 1.5rem;
    text-align: left;
    justify-content: flex-start;
  }
  .p-training-menu ul li a br {
    display: none;
  }
}

.p-training__container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 120px;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-training__container {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-training__container {
    margin-bottom: 12%;
  }
}

.p-training-home__intro {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-training-home__intro {
    flex-direction: column;
    margin-bottom: 12%;
  }
}

.p-training-home__intro figure {
  width: 31.25%;
}

@media screen and (max-width: 767px) {
  .p-training-home__intro figure {
    width: 60%;
    margin: 0 auto 5%;
  }
}

.p-training-home__intro figure img {
  width: 100%;
}

.p-training-home__intro > div {
  width: 65%;
}

@media screen and (max-width: 767px) {
  .p-training-home__intro > div {
    width: 100%;
  }
}

.p-training-home__intro > div p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-training-home__intro > div p {
    margin-bottom: 4%;
  }
}

.p-training-home__intro > div p:last-child {
  margin-bottom: 0;
}

.p-training-home__menu {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .p-training-home__menu {
    flex-direction: column;
  }
}

.p-training-home__menu > div {
  width: 48%;
  margin-right: 4%;
  border-radius: 5px;
  border: 4px solid #e5e5e5;
  padding: 40px;
  margin-bottom: 40px;
}

@media screen and (max-width: 1023px) {
  .p-training-home__menu > div {
    padding: 40px 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-training-home__menu > div {
    width: 100%;
    padding: 5%;
    margin-bottom: 6%;
  }
}

.p-training-home__menu > div:nth-child(2n) {
  margin-right: 0;
}

.p-training-home__menu > div h2 {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-training-home__menu > div h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-training-home__menu > div p {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .p-training-home__menu > div p {
    margin-bottom: 5%;
  }
}

@media screen and (max-width: 480px) {
  .p-training-home__menu > div p {
    text-align: left;
  }
}

.p-training-home__menu > div ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

.p-training-home__menu > div ul > li {
  width: 48%;
}

@media screen and (max-width: 480px) {
  .p-training-home__menu > div ul > li a {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.p-training-home__menu > div:nth-child(3), .p-training-home__menu > div:last-child {
  width: 100%;
  margin-right: 0;
  margin-bottom: 0;
}

.p-training-home__menu > div:nth-child(3) ul, .p-training-home__menu > div:last-child ul {
  justify-content: center;
}

.p-training-home__menu > div:nth-child(3) ul li, .p-training-home__menu > div:last-child ul li {
  max-width: 260px;
}

@media screen and (max-width: 767px) {
  .p-training-home__menu > div:nth-child(3) ul li, .p-training-home__menu > div:last-child ul li {
    max-width: 100%;
    width: 65%;
  }
}

@media screen and (max-width: 480px) {
  .p-training-home__menu > div:nth-child(3) ul li, .p-training-home__menu > div:last-child ul li {
    width: 100%;
  }
}

.p-training-valve__intro {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-training-valve__intro {
    margin-bottom: 5%;
  }
}

.p-training-valve__intro p {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
}

@media screen and (max-width: 767px) {
  .p-training-valve__intro p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.p-training-valve__intro p a {
  color: #004da1;
}

.p-training-valve__intro p a:hover {
  text-decoration: underline;
}

.p-training-valve__container {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .p-training-valve__container {
    flex-direction: column;
  }
}

.p-training-valve__container--box {
  width: 48%;
  margin-right: 4%;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-training-valve__container--box {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10%;
  }
}

.p-training-valve__container--box:nth-child(2n) {
  margin-right: 0;
}

.p-training-valve__container--box .p-sustainability-ttl__h2 {
  font-size: 28px;
  font-size: 2.8rem;
}

@media screen and (max-width: 767px) {
  .p-training-valve__container--box .p-sustainability-ttl__h2 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 4% !important;
  }
}

.p-training-valve__container--box .valve-date_list,
.p-training-valve__container--box ul {
  margin-bottom: -1em;
}

.p-training-valve__container--box .valve-date_list li,
.p-training-valve__container--box ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  margin-bottom: 0.75em;
  text-indent: -1em;
  margin-left: 1em;
}

.p-training-valve__container--box p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  margin-bottom: 0.75em;
  font-feature-settings: "palt";
}

.p-training-valve__container--box p:last-of-type {
  margin-bottom: 0;
}

.p-training-valve__container--box p a {
  color: #004da1;
}

@media screen and (max-width: 480px) {
  .p-training-valve__container--box p a {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.p-training-valve__container--box p a:hover {
  text-decoration: underline;
}

.p-training-valve__container--box .link--external {
  width: 280px;
}

@media screen and (max-width: 767px) {
  .p-training-valve__container--box .link--external {
    width: 100%;
  }
}

.p-training-valve__container--box.training-schedule {
  width: 100%;
  margin-right: 0;
}

.p-training-valve__container--box.training-schedule .c-table--scroll + .c-table--scroll {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-training-valve__container--box.training-schedule .c-table--scroll + .c-table--scroll {
    margin-top: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-training-valve__container--box.training-schedule table {
    min-width: 800px;
  }
}

.p-training-valve__container--box.training-schedule table th {
  text-align: left;
  font-size: 22px;
  font-size: 2.2rem;
  padding-left: 0;
}

.p-training-valve__container--box.training-schedule table td {
  vertical-align: middle;
}

.p-training-valve__container--box.training-schedule table td:first-child {
  width: 35%;
}

.p-training-valve__form.p-company-inquiry {
  padding: 0;
}

@media screen and (max-width: 767px) {
  .p-training-valve__form .c-form-body table {
    margin-top: 6%;
  }
}

@media screen and (max-width: 992px) {
  .p-training-valve__form .c-form-body table th br {
    display: none;
  }
}

.p-training-valve__form .c-form-body table td .valve-form__box {
  padding-top: 1em;
}

@media screen and (max-width: 992px) {
  .p-training-valve__form .c-form-body table td .valve-form__box {
    padding-top: 0;
  }
}

.p-training-valve__form .c-form-body table td p {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 0.5em;
}

.p-training-valve__form .c-form-body table td .valve-form__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.p-training-valve__form .c-form-body table td .valve-form__list > li,
.p-training-valve__form .c-form-body table td .valve-form__list > span {
  margin-right: 2em;
}

.p-training-valve__form .c-form-body table td .valve-form__list > li:last-child,
.p-training-valve__form .c-form-body table td .valve-form__list > span:last-child {
  margin-right: 0;
}

.p-training-valve__form .c-form-body table td .valve-form__list > li input,
.p-training-valve__form .c-form-body table td .valve-form__list > span input {
  position: relative;
  top: -3px;
  width: 1.6rem;
  height: 1.6rem;
  margin-right: 0.5rem;
}

.p-training-valve__form .c-form-body table td .valve-form__list.single-row {
  flex-direction: column;
}

.p-training-valve__form .c-form-body table td .valve-form__list.single-row > span {
  margin-right: 0;
  margin-bottom: 10px;
  margin-left: 0 !important;
}

.p-training-valve__form .c-form-body table td .valve-form__list.single-row > span:last-child {
  margin-bottom: 0;
}

.p-training-valve__form .c-form-body table td .valve-form__list.single-row > span input {
  top: inherit;
}

.p-training-valve__form .c-form-body table td .c-form-body__select {
  width: 100%;
}

.p-calculator {
  position: relative;
}

.p-calculator-intro {
  width: 100%;
  max-width: 1280px;
  padding: 50px 10px 0;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-calculator-intro {
    padding: 10% 5% 0;
  }
}

.p-calculator-intro p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-calculator-intro p {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.p-calculator-intro__menu {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin: 30px 0 60px;
}

@media screen and (max-width: 767px) {
  .p-calculator-intro__menu {
    flex-direction: column;
    margin: 4% 0;
  }
}

.p-calculator-intro__menu > div {
  width: 23.5%;
  margin-right: 2%;
}

@media screen and (max-width: 992px) {
  .p-calculator-intro__menu > div {
    width: 49%;
    margin-bottom: 4%;
  }
  .p-calculator-intro__menu > div:nth-child(2n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-calculator-intro__menu > div {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-calculator-intro__menu > div:nth-child(4n) {
  margin-right: 0;
}

.p-calculator-intro__menu > div .calculator-menu {
  position: relative;
  display: block;
  color: #004da1;
  font-size: 17px;
  font-size: 1.7rem;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-calculator-intro__menu > div .calculator-menu {
    margin-bottom: 2.5%;
  }
}

.p-calculator-intro__menu > div .calculator-menu::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  margin-top: -5px;
  width: 8px;
  height: 8px;
  border-top: 1px solid #004da1;
  border-right: 1px solid #004da1;
  transform: rotate(135deg);
  margin-left: 0.75em;
}

.p-calculator-intro__menu > div p {
  font-size: 15px;
  font-size: 1.5rem;
}

@media screen and (max-width: 992px) {
  .p-calculator-intro__menu > div p br {
    display: none;
  }
}

.p-calculator-menu {
  max-width: 1200px;
}

.p-calculator-menu ul {
  max-width: 1200px;
}

.p-calculator-menu ul li a {
  justify-content: center;
  text-align: center;
}

@media screen and (max-width: 992px) {
  .p-calculator-menu ul li a {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 767px) {
  .p-calculator-menu ul li a {
    font-size: 15px;
    font-size: 1.5rem;
    text-align: left;
    justify-content: flex-start;
  }
  .p-calculator-menu ul li a br {
    display: none;
  }
}

.p-calculator-menu ul li a::after {
  transform: rotate(135deg);
}

.p-calculator-menu ul li a.ohter-page::after {
  transform: rotate(45deg);
}

.p-calculator-menu ul li a .br-tab {
  display: none;
}

@media screen and (max-width: 992px) {
  .p-calculator-menu ul li a .br-tab {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .p-calculator-menu ul li a .br-tab {
    display: none;
  }
}

.p-calculator__container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 80px;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-calculator__container {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-calculator__container {
    margin-bottom: 12%;
  }
}

.p-calculator__container:last-child {
  margin-bottom: 140px;
}

@media screen and (max-width: 767px) {
  .p-calculator__container:last-child {
    margin-bottom: 15%;
  }
}

.p-calculator__container h2 {
  color: #004da1;
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-calculator__container h2 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 6%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-calculator__container h2 {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

.p-calculator__container h3 {
  color: #004da1;
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: 700;
  margin-bottom: 25px;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-calculator__container h3 {
    font-size: 22px;
    font-size: 2.2rem;
    margin-bottom: 3%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-calculator__container h3 {
    font-size: 20px;
    font-size: 2rem;
  }
}

.p-calculator__container h3 span {
  font-size: 77%;
}

.p-calculator__container .comment li {
  font-size: 16px;
  font-size: 1.6rem;
  margin-left: 1em;
  text-indent: -1em;
  line-height: 1.3;
  margin-bottom: 10px;
}

.p-calculator__container .comment li:last-child {
  margin-bottom: 0;
}

.p-calculator__container--btn {
  width: 32%;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-calculator__container--btn {
    width: 100%;
  }
}

.p-calculator__container--btn .c-btn--type01.link--pdf::after {
  background: url("../images/common/icon-pdf_blue.png") no-repeat left center/contain;
  width: 16px;
  height: 19px;
  margin-top: -10px;
}

.p-calculator__container .p-product__service__links01 {
  display: block;
  margin-bottom: 0;
}

.p-calculator__container .p-product__service__links01 li {
  width: inherit;
  margin-right: 0;
  margin-bottom: 0;
}

.p-calculator__container .p-product__service__links01 .link-pdf {
  font-size: 16px;
  font-size: 1.6rem;
  color: #004da1;
}

.p-calculator__container .p-product__service__links01 .link-pdf::after {
  background: url("../images/common/icon-pdf_blue.png") no-repeat left center/contain;
  width: 16px;
  height: 19px;
  top: 3px;
}

.p-calculator__container .p-product__service__links01 .link-pdf::before {
  margin-right: 0.5em;
}

.p-calculator__btn {
  position: relative;
  display: block;
  width: 100%;
  color: #fff;
  background: #535c9d;
  border-radius: 4px;
  padding: 20px;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 700;
  transition: opacity .3s;
  box-shadow: 0 2px 0 #e5e5e5;
  text-align: center;
}

.p-calculator__btn:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-calculator__btn {
    padding: 4%;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .p-calculator__btn {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

.p-calculator__btn::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}

.p-calculator__btn.blue {
  background: #4373a7;
}

.p-calculator__btn.light-blue {
  background: #54a1be;
}

.p-calculator__btn.green {
  background: #65a27a;
}

.p-calculator__column-3, .p-calculator__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-calculator__column-3, .p-calculator__list {
    flex-direction: column;
  }
}

.p-calculator__column-3 > div,
.p-calculator__column-3 > li, .p-calculator__list > div,
.p-calculator__list > li {
  width: 32%;
  margin-right: 2%;
}

@media screen and (max-width: 767px) {
  .p-calculator__column-3 > div,
  .p-calculator__column-3 > li, .p-calculator__list > div,
  .p-calculator__list > li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 3%;
  }
}

.p-calculator__column-3 > div:nth-child(3n),
.p-calculator__column-3 > li:nth-child(3n), .p-calculator__list > div:nth-child(3n),
.p-calculator__list > li:nth-child(3n) {
  margin-right: 0;
  margin-bottom: 0;
}

.p-calculator__column-3.column-1, .p-calculator__list.column-1 {
  justify-content: center;
}

.p-reference {
  position: relative;
  /* table */
  /* スワップイメージ */
  /* 基礎知識TOP */
  /* どのような場所で使われているの？ */
  /* どのような構造をしているの？ */
  /* どのような材料で作られているの？ */
  /* バルブの操作方法は？ */
  /* バルブの種類 */
  /* バルブの種類 */
}

.p-reference .material-mv_ttl {
  font-feature-settings: "palt";
}

.p-reference .material-mv_ttl span {
  font-size: 35px;
  font-size: 3.5rem;
}

@media screen and (max-width: 767px) {
  .p-reference .material-mv_ttl span {
    font-size: calc(20px + 4 * (100vw - 320px)/450);
  }
}

.p-reference__wrap {
  padding: 80px 10px 100px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-reference__wrap {
    padding: 10% 5%;
  }
}

.p-reference__wrap::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -2;
}

.p-reference__wrap.bg--gray::after {
  background: #F3F4F4;
}

.p-reference__wrap.reference-home_sec02 {
  padding: 50px 10px;
}

@media screen and (max-width: 767px) {
  .p-reference__wrap.reference-home_sec02 {
    padding: 5%;
  }
}

.p-reference__wrap p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

@media screen and (max-width: 767px) {
  .p-reference__wrap p {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

.p-reference__container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-reference__container {
    padding: 5%;
  }
}

.p-reference .mw1080 {
  width: 100%;
  position: relative;
  max-width: 1080px;
  margin: 0 auto;
}

.p-reference .mw1180 {
  width: 100%;
  position: relative;
  max-width: 1180px;
  margin: 0 auto;
}

.p-reference .mw1280 {
  width: 100%;
  position: relative;
  max-width: 1280px;
  margin: 0 auto;
}

.p-reference .reference-ttl_h2 {
  color: #1f4c9b;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: bold;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .p-reference .reference-ttl_h2 {
    font-size: calc(24px + 4 * (100vw - 320px)/450);
  }
}

.p-reference .reference-ttl_h2 span {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-reference .reference-ttl_h2 span {
    font-size: calc(16px + 4 * (100vw - 320px)/450);
  }
}

.p-reference .reference-menu_list {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: -50px;
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list {
    max-width: 100%;
    flex-direction: column;
    margin-bottom: -3.5%;
  }
}

.p-reference .reference-menu_list li {
  width: 31.25%;
  margin-right: 3.125%;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 3.5%;
  }
}

.p-reference .reference-menu_list li:nth-child(3n) {
  margin-right: 0;
}

.p-reference .reference-menu_list li a {
  display: block;
  transition: opacity .3s;
}

.p-reference .reference-menu_list li a:hover {
  opacity: .7;
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
}

.p-reference .reference-menu_list li a div {
  background: #1f4c9b;
  border-radius: 5px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 10px;
  margin-bottom: 15px;
  height: 160px;
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li a div {
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 0;
    height: 16vw;
    width: 35%;
    padding: 4% 2%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li a div figure {
    width: 30%;
  }
}

.p-reference .reference-menu_list li a div figure img {
  display: block;
  width: auto;
  margin: 0 auto 20px;
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li a div figure img {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 425px) {
  .p-reference .reference-menu_list li a div figure img {
    width: 100%;
  }
}

.p-reference .reference-menu_list li a div em {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  display: block;
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li a div em {
    width: 65%;
    margin-left: 5%;
    text-align: center;
    font-size: 2.5vw;
  }
}

.p-reference .reference-menu_list li a span {
  position: relative;
  display: block;
  color: #1f4c9b;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li a span {
    margin-left: 2.5%;
    width: 62.5%;
    font-size: 2.75vw;
    text-align: left;
  }
}

@media screen and (max-width: 425px) {
  .p-reference .reference-menu_list li a span {
    font-size: 3vw;
  }
}

.p-reference .reference-menu_list li a span::after {
  content: "";
  display: inline-block;
  position: relative;
  top: -1.5px;
  margin-top: -3px;
  margin-left: .5em;
  width: 6px;
  height: 6px;
  border-top: 1px solid #004DA1;
  border-right: 1px solid #004DA1;
  transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li a span::after {
    display: block;
    position: absolute;
    top: 50%;
    right: -.5em;
  }
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li:nth-child(1) figure img {
    width: 50%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li:nth-child(2) figure img {
    width: 67%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li:nth-child(3) figure img {
    width: 85%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference .reference-menu_list li:nth-child(4) figure img {
    width: 80%;
  }
}

.p-reference-training {
  padding: 60px 10px;
}

@media screen and (max-width: 767px) {
  .p-reference-training {
    padding: 8% 5%;
  }
}

.p-reference-training h2 {
  text-align: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-training h2 {
    line-height: 1.3 !important;
    margin-bottom: 5%;
  }
}

.p-reference-training p {
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-reference-training p {
    margin-bottom: 8%;
  }
}

.p-reference-training .btn-wh {
  width: 290px;
  margin: 0 auto;
}

.p-reference .reference-table {
  width: 100%;
  border: 1px solid #e6e6e6;
  border-bottom: none;
  border-right: none;
}

.p-reference .reference-table th, .p-reference .reference-table td {
  padding: 20px 5px;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  vertical-align: middle;
  background: #fff;
  border-bottom: 1px solid #e6e6e6;
  border-right: 1px solid #e6e6e6;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-reference .reference-table th, .p-reference .reference-table td {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

.p-reference .reference-table th {
  background: #EEF3F9;
  color: #004DA1;
}

.p-reference .reference-table thead {
  position: relative;
  background-clip: padding-box;
}

.p-reference .reference-table thead::after {
  content: "";
  display: block;
  background: #004DA1;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  top: 100%;
}

.p-reference .reference-table .bg-pink {
  background: #fcebeb !important;
}

.p-reference .splide__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-reference .splide__slide {
  opacity: .6;
  border: none !important;
}

.p-reference .splide__slide.is-active {
  opacity: 1;
}

.p-reference .splide__track--nav > .splide__list > .splide__slide.is-active {
  border: none;
}

.p-reference-home__sec01 p {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec01 p {
    margin-bottom: 5%;
  }
}

.p-reference-home__sec01 p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec01 .reference-menu_list {
    margin-top: 10%;
  }
}

.p-reference-home__sec01 .btn-wh {
  width: 290px;
  margin: 0 auto 60px;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec01 .btn-wh {
    margin: 8% auto;
  }
  .p-reference-home__sec01 .btn-wh a {
    font-size: calc(14px + 5 * (100vw - 320px)/450);
  }
}

@media screen and (max-width: 425px) {
  .p-reference-home__sec01 .btn-wh {
    width: 100%;
  }
}

.p-reference-home__sec02 h2 {
  color: #004da1;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec02 h2 {
    font-size: calc(16px + 5 * (100vw - 320px)/450);
    margin-bottom: 5%;
  }
}

.p-reference-home__sec02 h2 em {
  display: block;
  font-size: 46px;
  font-size: 4.6rem;
  font-weight: bold;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec02 h2 em {
    font-size: calc(30px + 5 * (100vw - 320px)/450);
    margin-bottom: 1.5%;
  }
}

.p-reference-home__sec02 > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec02 > div {
    flex-direction: column;
  }
}

.p-reference-home__sec02 > div > div {
  width: 70%;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec02 > div > div {
    width: 100%;
  }
}

.p-reference-home__sec02 > div > div p {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec02 > div > div p {
    margin-bottom: 4%;
  }
  .p-reference-home__sec02 > div > div p br {
    display: none;
  }
}

.p-reference-home__sec02 > div > div p:last-of-type {
  margin-bottom: 0;
}

.p-reference-home__sec02 > div figure {
  width: 27.7%;
  max-width: 300px;
}

@media screen and (max-width: 767px) {
  .p-reference-home__sec02 > div figure {
    margin: 5% auto 0;
    width: 60%;
    max-width: 100%;
  }
}

.p-reference-home__sec02 > div figure img {
  width: 100%;
}

.p-reference-use__sec01.mw1180 {
  margin-top: -30px;
}

@media screen and (max-width: 767px) {
  .p-reference-use__sec01.mw1180 {
    margin-top: -4%;
  }
}

.p-reference-use__list {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: -40px;
}

@media screen and (max-width: 767px) {
  .p-reference-use__list {
    margin-top: 5%;
    flex-direction: column;
    margin-bottom: -5%;
  }
}

.p-reference-use__list > div {
  width: 48%;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 30px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-use__list > div {
    padding: 5%;
  }
}

@media screen and (max-width: 1023px) {
  .p-reference-use__list > div {
    padding: 20px 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-use__list > div {
    width: 100%;
    padding: 5%;
    margin-bottom: 5%;
  }
}

.p-reference-use__list > div h2 {
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-reference-use__list > div h2 {
    margin-bottom: 4%;
  }
}

.p-reference-use__list--photo {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-use__list--photo {
    margin-bottom: 5%;
  }
}

.p-reference-use__list--photo figure {
  width: 40%;
  max-width: 200px;
}

@media screen and (max-width: 767px) {
  .p-reference-use__list--photo figure {
    max-width: 100%;
    width: 30%;
  }
}

.p-reference-use__list--photo figure img {
  width: 100%;
}

.p-reference-use__list--photo p {
  width: 55%;
  font-feature-settings: "palt";
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
  .p-reference-use__list--photo p {
    width: 65%;
  }
}

.p-reference-use__list .btn-wh {
  width: 290px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-reference-use__list .btn-wh {
    width: 65%;
  }
  .p-reference-use__list .btn-wh a {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

@media screen and (max-width: 425px) {
  .p-reference-use__list .btn-wh {
    width: 100%;
  }
}

.p-reference-structure {
  /* ゲートバルブ */
}

.p-reference-structure__sec01.mw1180 {
  margin-top: -30px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__sec01.mw1180 {
    margin-top: -4%;
  }
}

.p-reference-structure__list {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list {
    margin-top: 4%;
  }
}

.p-reference-structure__list .structure__list--box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 30px 40px;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list .structure__list--box {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list .structure__list--box {
    padding: 5% 2%;
    margin-bottom: 4%;
  }
}

.p-reference-structure__list .structure__list--box:last-child {
  margin-bottom: 0;
}

.p-reference-structure__list .structure__list--box figure {
  width: 21.8%;
  max-width: 240px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list .structure__list--box figure {
    max-width: 100%;
    width: 29%;
  }
}

.p-reference-structure__list .structure__list--box figure img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 240px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list .structure__list--box figure img {
    height: auto;
  }
}

.p-reference-structure__list .structure__list--box .inner {
  width: 73.6%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list .structure__list--box .inner {
    width: 66.6%;
  }
}

.p-reference-structure__list .structure__list--box .inner h2 {
  padding-bottom: 20px;
  border-bottom: 2px solid #1f4c9b;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list .structure__list--box .inner h2 {
    padding-bottom: 3%;
    margin-bottom: 3%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list .structure__list--box .inner h2 span {
    display: block;
    margin-top: 2%;
  }
}

@media screen and (max-width: 1023px) {
  .p-reference-structure__list .structure__list--box .inner p br {
    display: none;
  }
}

.p-reference-structure__list .structure__list--box .inner ul {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__list .structure__list--box .inner ul {
    display: none;
  }
}

.p-reference-structure__list .structure__list--box .inner ul > li {
  width: 36%;
  max-width: 290px;
  margin-right: 3.7%;
}

@media screen and (max-width: 1023px) {
  .p-reference-structure__list .structure__list--box .inner ul > li {
    width: 48.5%;
    margin-right: 3%;
  }
}

.p-reference-structure__list .structure__list--box .inner ul > li:last-child {
  margin-right: 0;
}

.p-reference-structure__list .structure__list--box .sp-structure__menu {
  width: 100%;
  margin-top: 4%;
}

.p-reference-structure__list .structure__list--box .sp-structure__menu ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

.p-reference-structure__list .structure__list--box .sp-structure__menu ul > li {
  width: 48%;
}

.p-reference-structure__list .structure__list--box .sp-structure__menu ul > li a {
  font-size: calc(12px + 4 * (100vw - 320px)/450);
}

.p-reference-structure__list .structure__list--box .sp-structure__menu ul > li a::after {
  right: 1em;
}

.p-reference-structure__container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container {
    padding: 5%;
  }
}

.p-reference-structure__container .inner {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

.p-reference-structure__container .inner #main-carousel {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner #main-carousel {
    margin-top: 4%;
  }
}

.p-reference-structure__container .inner #main-carousel img {
  height: 540px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner #main-carousel img {
    height: 65vw;
  }
}

.p-reference-structure__container .inner #thumbnail-carousel {
  margin: 30px 0 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner #thumbnail-carousel {
    margin: 5% 0;
  }
}

.p-reference-structure__container .inner .btn-wh {
  width: 290px;
  margin: 0 auto 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner .btn-wh {
    width: 65%;
    margin-bottom: 5%;
  }
}

.p-reference-structure__container .inner .structure-gatevalve__note h2 {
  margin-bottom: 30px;
  text-align: center;
  line-height: 1.3;
  font-size: 30px;
  font-size: 3rem;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner .structure-gatevalve__note h2 {
    margin-bottom: 4%;
    font-size: calc(17px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-structure__container .inner .structure-gatevalve__note p {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner .structure-gatevalve__note p {
    margin-bottom: 4%;
  }
}

.p-reference-structure__container .inner .structure-gatevalve__note ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  text-indent: -2em;
  margin-left: 2em;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner .structure-gatevalve__note ul li {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
    margin-bottom: 3%;
  }
}

.p-reference-structure__container .inner .structure-gatevalve__note ul li:last-child {
  margin-bottom: 0;
}

.p-reference-structure__container .inner .structure-gatevalve__note dl dt {
  color: #004DA1;
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: .5em;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner .structure-gatevalve__note dl dt {
    font-size: calc(15px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-structure__container .inner .structure-gatevalve__note dl + dl {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner .structure-gatevalve__note dl + dl {
    margin-top: 4%;
  }
}

.p-reference-structure__container .inner .structure-gatevalve__note + .structure-gatevalve__note {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner .structure-gatevalve__note + .structure-gatevalve__note {
    margin-top: 8%;
  }
}

.p-reference-structure__container .inner .structure-gatevalve__note .btn-wh {
  margin-top: 40px;
  width: 390px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .inner .structure-gatevalve__note .btn-wh {
    margin-top: 6%;
    width: 100%;
  }
  .p-reference-structure__container .inner .structure-gatevalve__note .btn-wh a {
    font-size: calc(13px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-structure__container .reference-ttl_h2 {
  margin-bottom: 30px;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .reference-ttl_h2 {
    margin-bottom: 5%;
  }
}

.p-reference-structure__container + .p-reference-structure__container {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container + .p-reference-structure__container {
    margin-top: 10%;
  }
}

.p-reference-structure__container .strainer-sec_box {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .strainer-sec_box {
    margin-top: 8%;
  }
}

.p-reference-structure__container .strainer-sec_box h3 {
  color: #004DA1;
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .strainer-sec_box h3 {
    font-size: calc(18px + 4 * (100vw - 320px)/450);
    margin-bottom: 4%;
  }
}

.p-reference-structure__container .strainer-sec_box > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .strainer-sec_box > div {
    flex-direction: column;
  }
}

.p-reference-structure__container .strainer-sec_box > div > div {
  width: 70%;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .strainer-sec_box > div > div {
    width: 100%;
    order: 2;
  }
}

.p-reference-structure__container .strainer-sec_box > div figure {
  width: 25%;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__container .strainer-sec_box > div figure {
    width: 35%;
    margin: 0 auto 5%;
    order: 1;
  }
}

.p-reference-structure__container .strainer-sec_box > div figure img {
  width: 100%;
}

.p-reference-structure__relation h2 {
  text-align: center;
}

.p-reference-structure__relation .reference-valve_relation {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation {
    margin-top: 5%;
  }
}

.p-reference-structure__relation .reference-valve_relation .reference-menu_list figure {
  height: 90px;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list figure {
    height: auto;
    margin: 0 auto;
  }
}

.p-reference-structure__relation .reference-valve_relation .reference-menu_list figure img {
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list figure img {
    width: 100% !important;
    top: inherit !important;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li a > div {
    width: 48%;
    height: 18vw;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(1) figure {
    width: 15%;
  }
}

.p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(1) figure img {
  width: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(2) figure {
    width: 17%;
  }
}

.p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(2) figure img {
  width: 34px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(3) figure {
    width: 25.5%;
  }
}

.p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(3) figure img {
  top: 10px;
  width: 51px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(4) figure {
    width: 35%;
  }
}

.p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(4) figure img {
  top: 10px;
  left: 10px;
  width: 70px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(4) figure img {
    left: 1.5vw;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(5) figure {
    width: 21%;
  }
}

.p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(5) figure img {
  width: 42px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(6) figure {
    width: 26%;
  }
}

.p-reference-structure__relation .reference-valve_relation .reference-menu_list li:nth-child(6) figure img {
  width: 52px;
  top: 10px;
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li div em {
    width: 60%;
    font-size: calc(12px + 4 * (100vw - 320px)/450);
  }
}

@media screen and (max-width: 767px) {
  .p-reference-structure__relation .reference-valve_relation .reference-menu_list li span {
    width: 50%;
    margin-left: 2%;
    font-size: calc(16px + 4 * (100vw - 320px)/450);
  }
}

@media screen and (max-width: 1023px) {
  .p-reference-structure .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-reference-structure .c-table--scroll table {
    min-width: 900px;
  }
}

.p-reference-structure .c-table--scroll + .btn-wh {
  width: 290px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .p-reference-structure .c-table--scroll + .btn-wh {
    width: 65%;
    margin-top: 5%;
  }
}

.p-reference-material {
  /* どのような材料で作られているの？ */
}

.p-reference-material__sec01.mw1180 {
  margin-top: -30px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec01.mw1180 {
    margin-top: -4%;
  }
}

.p-reference-material__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-top: 30px;
  margin-bottom: -30px;
}

@media screen and (max-width: 940px) {
  .p-reference-material__list {
    margin-top: 4%;
    margin-bottom: -4%;
    flex-direction: column;
  }
}

.p-reference-material__list .material__list--box {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  width: 48%;
  padding: 30px;
  margin-right: 4%;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__list .material__list--box {
    padding: 5%;
  }
}

@media screen and (max-width: 940px) {
  .p-reference-material__list .material__list--box {
    width: 100%;
    padding: 5% 2%;
    margin-right: 0;
    margin-bottom: 4%;
  }
}

.p-reference-material__list .material__list--box:nth-child(2n) {
  margin-right: 0;
}

.p-reference-material__list .material__list--box .inner {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-bottom: 20px;
  min-height: 160px;
}

@media screen and (max-width: 940px) {
  .p-reference-material__list .material__list--box .inner {
    min-height: inherit;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-material__list .material__list--box .inner {
    margin-bottom: 4%;
  }
}

.p-reference-material__list .material__list--box .inner figure {
  width: 100%;
  max-width: 160px;
  margin-right: 20px;
}

@media screen and (max-width: 940px) {
  .p-reference-material__list .material__list--box .inner figure {
    max-width: 100%;
    width: 23%;
    margin-right: 2%;
  }
}

.p-reference-material__list .material__list--box .inner figure img {
  width: 100%;
}

.p-reference-material__list .material__list--box .inner > div {
  width: calc(100% - 180px);
}

@media screen and (max-width: 940px) {
  .p-reference-material__list .material__list--box .inner > div {
    width: 75%;
  }
}

.p-reference-material__list .material__list--box .inner > div h2 {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__list .material__list--box .inner > div h2 {
    margin-bottom: 3%;
    font-size: calc(20px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-material__list .material__list--box .btn-wh {
  width: 290px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-reference-material__list .material__list--box .btn-wh {
    width: 60%;
  }
  .p-reference-material__list .material__list--box .btn-wh a {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

@media screen and (max-width: 480px) {
  .p-reference-material__list .material__list--box .btn-wh {
    width: 85%;
  }
}

.p-reference-material__sec02 {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  margin-bottom: 60px !important;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec02 {
    padding: 5%;
  }
}

@media screen and (max-width: 1023px) {
  .p-reference-material__sec02 {
    padding: 5% 2%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec02 {
    margin-bottom: 8% !important;
  }
}

.p-reference-material__sec02 h2 {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec02 h2 {
    margin-bottom: 5%;
    font-size: calc(20px + 4 * (100vw - 320px)/450);
    font-feature-settings: "palt";
  }
}

.p-reference-material__sec02 .reference-table td {
  width: calc( 100% / 4);
  padding: 20px 10px;
  vertical-align: top;
}

.p-reference-material__sec02 .material-feature dt {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec02 .material-feature dt {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
    margin-bottom: 4%;
  }
}

.p-reference-material__sec02 .material-feature dd ul {
  text-align: center;
}

.p-reference-material__sec02 .material-feature dd ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec02 .material-feature dd ul li {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
    margin-bottom: 4%;
  }
}

.p-reference-material__sec02 .material-feature dd ul li:last-child {
  margin-bottom: 0;
}

.p-reference-material__sec03, .p-reference-material__sec04, .p-reference-material__sec05, .p-reference-material__sec06, .p-reference-material__sec07 {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  margin-bottom: 60px !important;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec03, .p-reference-material__sec04, .p-reference-material__sec05, .p-reference-material__sec06, .p-reference-material__sec07 {
    padding: 5%;
  }
}

@media screen and (max-width: 1023px) {
  .p-reference-material__sec03, .p-reference-material__sec04, .p-reference-material__sec05, .p-reference-material__sec06, .p-reference-material__sec07 {
    padding: 5% 2%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec03, .p-reference-material__sec04, .p-reference-material__sec05, .p-reference-material__sec06, .p-reference-material__sec07 {
    margin-bottom: 8% !important;
  }
}

.p-reference-material__sec03 h2, .p-reference-material__sec04 h2, .p-reference-material__sec05 h2, .p-reference-material__sec06 h2, .p-reference-material__sec07 h2 {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec03 h2, .p-reference-material__sec04 h2, .p-reference-material__sec05 h2, .p-reference-material__sec06 h2, .p-reference-material__sec07 h2 {
    margin-bottom: 5%;
    line-height: 1.4 !important;
    font-size: calc(19px + 4 * (100vw - 320px)/450);
    font-feature-settings: "palt";
  }
}

.p-reference-material__sec03 .reference-table th:nth-child(2), .p-reference-material__sec04 .reference-table th:nth-child(2), .p-reference-material__sec05 .reference-table th:nth-child(2), .p-reference-material__sec06 .reference-table th:nth-child(2), .p-reference-material__sec07 .reference-table th:nth-child(2) {
  width: 35%;
}

.p-reference-material__sec05 .reference-table th:nth-child(2), .p-reference-material__sec06 .reference-table th:nth-child(2), .p-reference-material__sec07 .reference-table th:nth-child(2) {
  width: auto;
}

.p-reference-material__sec06 .reference-table td:nth-child(2) {
  text-align: left;
  padding: 20px;
}

@media screen and (max-width: 1023px) {
  .p-reference-material__sec06 .reference-table td:nth-child(2) {
    padding: 20px 10px;
  }
}

.p-reference-material__note {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__note {
    margin-bottom: 4%;
  }
}

.p-reference-material__note dt, .p-reference-material__note dd {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

@media screen and (max-width: 767px) {
  .p-reference-material__note dt, .p-reference-material__note dd {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-material__sec07 {
  margin-bottom: 0 !important;
}

.p-reference-material__sec07 .reference-table th,
.p-reference-material__sec07 .reference-table td {
  padding: 20px;
}

.p-reference-material__sec07 .reference-table th:nth-child(1) {
  width: 20%;
}

.p-reference-material__sec07 .reference-table th:nth-child(2), .p-reference-material__sec07 .reference-table th:nth-child(3) {
  width: 40%;
}

.p-reference-material__sec07 .reference-table th ol {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

.p-reference-material__sec07 .reference-table th ol li {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec07 .reference-table th ol li {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-material__sec07 .reference-table td:nth-child(1) {
  padding: 20px 10px;
  font-size: 15px;
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  .p-reference-material__sec07 .reference-table td:nth-child(1) {
    font-size: calc(13px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-material__sec07 .reference-table .material-measure {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  position: relative;
}

.p-reference-material__sec07 .reference-table .material-measure::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  background: #dce9f4;
  width: auto;
  height: 20px;
  margin-top: -10px;
  z-index: 1;
}

.p-reference-material__sec07 .reference-table .material-measure > span {
  font-size: 16px;
  font-size: 1.6rem;
  position: relative;
  z-index: 2;
}

.p-reference-material__sec07 .reference-table .material-measure > span:empty::before {
  content: "";
  text-align: center;
  border-left: 1px solid #4b4e56;
}

.p-reference-material__sec07 .reference-table #measure1-1::after {
  width: 14.6%;
  left: 0;
}

.p-reference-material__sec07 .reference-table #measure1-2::after {
  width: 22.7%;
  left: 19%;
}

.p-reference-material__sec07 .reference-table #measure2-1::after {
  width: 21%;
  left: 0;
}

.p-reference-material__sec07 .reference-table #measure2-2::after {
  width: 38.6%;
  left: 19%;
}

.p-reference-material__sec07 .reference-table #measure3-1::after {
  width: 98.7%;
  left: 0;
}

.p-reference-material__sec07 .reference-table #measure3-2::after {
  width: 43%;
  left: 19%;
}

.p-reference-material__sec07 .reference-table #measure4-1::after {
  width: 98.7%;
  left: 0;
}

.p-reference-material__sec07 .reference-table #measure4-2::after {
  width: 96%;
  left: 2.7%;
}

.p-reference-material__sec07 .reference-table #measure5-1::after {
  width: 21%;
  left: 0;
}

.p-reference-material__sec07 .reference-table #measure5-2::after {
  width: 39.7%;
  left: 0;
}

.p-reference-material .p-reference-training {
  margin-top: -100px;
}

@media screen and (max-width: 767px) {
  .p-reference-material .p-reference-training {
    margin-top: -12%;
  }
}

@media screen and (max-width: 1023px) {
  .p-reference-material .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
  .p-reference-material .c-table--scroll table {
    min-width: 900px;
  }
}

.p-reference-material__type .material-type_container {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 50px 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container {
    padding: 5% 4%;
  }
}

.p-reference-material__type .material-type_container .reference-ttl_wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding-bottom: 20px;
  border-bottom: 2px solid #1f4c9b;
  margin-bottom: 40px;
  flex-wrap: nowrap;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .reference-ttl_wrap {
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 3%;
    margin-bottom: 5%;
  }
}

.p-reference-material__type .material-type_container .reference-ttl_wrap h2 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: nowrap;
  white-space: nowrap;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .reference-ttl_wrap h2 {
    order: 2;
  }
}

.p-reference-material__type .material-type_container .reference-ttl_wrap h2 strong {
  display: block;
  font-weight: bold;
  font-feature-settings: "palt";
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .reference-ttl_wrap h2 strong {
    font-size: calc(18px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-material__type .material-type_container .reference-ttl_wrap h2 > span {
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  background: #1f4c9b;
  border-radius: 5px;
  padding: 10px;
  margin-left: 15px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .reference-ttl_wrap h2 > span {
    font-size: calc(12px + 4 * (100vw - 320px)/450);
    margin-left: 2%;
    padding: 10px 1vw;
  }
}

.p-reference-material__type .material-type_container .reference-ttl_wrap ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .reference-ttl_wrap ul {
    order: 1;
    margin-bottom: 5px;
  }
}

.p-reference-material__type .material-type_container .reference-ttl_wrap ul li {
  color: #1f4c9b;
  border: 1px solid #1f4c9b;
  border-radius: 5px;
  background: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  padding: 5px 10px;
  margin-left: 1em;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .reference-ttl_wrap ul li {
    font-size: calc(12px + 4 * (100vw - 320px)/450);
    padding: 5px 1vw;
    margin-left: .5em;
  }
}

.p-reference-material__type .material-type_container .reference-ttl_wrap ul li:first-child {
  margin-left: 0;
}

.p-reference-material__type .material-type_container .reference-ttl_wrap ul li.material-use02 {
  color: #D08B3D;
  border: 1px solid #D08B3D;
}

.p-reference-material__type .material-type_container .material-type__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__inner {
    flex-direction: column;
  }
}

.p-reference-material__type .material-type_container .material-type__photo {
  width: 48%;
  max-width: 525px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__photo {
    width: 100%;
    max-width: 100%;
    margin-bottom: 4%;
  }
}

.p-reference-material__type .material-type_container .material-type__photo figure {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__photo figure {
    margin-bottom: 4%;
  }
}

.p-reference-material__type .material-type_container .material-type__photo figure :last-of-type {
  margin-bottom: 0;
}

.p-reference-material__type .material-type_container .material-type__photo figure img {
  width: 100%;
}

.p-reference-material__type .material-type_container .material-type__detail {
  width: 49%;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail {
    width: 100%;
  }
}

.p-reference-material__type .material-type_container .material-type__detail .material-txt-box {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail .material-txt-box {
    margin-bottom: 6%;
  }
}

.p-reference-material__type .material-type_container .material-type__detail .material-txt-box p {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail .material-txt-box p {
    margin-bottom: 5%;
    font-size: calc(13px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-material__type .material-type_container .material-type__detail .material-txt-box p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail .material-txt-box p br {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail .material-txt-box figure {
    margin-bottom: 5%;
  }
  .p-reference-material__type .material-type_container .material-type__detail .material-txt-box figure:last-child {
    margin-bottom: 0;
  }
}

.p-reference-material__type .material-type_container .material-type__detail .material-txt-box figure img {
  width: 100%;
}

.p-reference-material__type .material-type_container .material-type__detail .material-sec {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail .material-sec {
    margin-bottom: 5%;
  }
}

.p-reference-material__type .material-type_container .material-type__detail .material-sec:last-of-type {
  margin-bottom: 0;
}

.p-reference-material__type .material-type_container .material-type__detail .material-sec h3 {
  color: #1f4c9b;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail .material-sec h3 {
    font-size: calc(18px + 4 * (100vw - 320px)/450);
    margin-bottom: 2.5%;
  }
}

.p-reference-material__type .material-type_container .material-type__detail .material-sec ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail .material-sec ul li {
    font-size: calc(13px + 4 * (100vw - 320px)/450);
    margin-bottom: 2.5%;
  }
}

.p-reference-material__type .material-type_container .material-type__detail .material-sec ul li:last-child {
  margin-bottom: 0;
}

.p-reference-material__type .material-type_container .material-type__detail .btn-wh {
  width: 290px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container .material-type__detail .btn-wh {
    width: 65%;
  }
  .p-reference-material__type .material-type_container .material-type__detail .btn-wh a {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

@media screen and (max-width: 425px) {
  .p-reference-material__type .material-type_container .material-type__detail .btn-wh {
    width: 100%;
    margin-top: 8%;
  }
}

.p-reference-material__type .material-type_container.material-sas > p {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container.material-sas > p {
    margin-bottom: 8%;
  }
}

.p-reference-material__type .material-type_container.material-sas figure {
  width: 100%;
  margin: 0 auto;
}

.p-reference-material__type .material-type_container.material-sas figure img {
  width: 100%;
}

.p-reference-material__type .material-type_container.material-sas .material-sas_img01 {
  max-width: 940px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__type .material-type_container.material-sas .material-sas_img01 {
    max-width: 100%;
    margin-bottom: 6%;
  }
}

.p-reference-material__type .material-type_container.material-sas .material-sas_img02 {
  max-width: 1080px;
}

.p-reference-material__relation {
  padding: 0 0 60px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__relation {
    padding: 0 0 4%;
  }
}

.p-reference-material__relation .inner {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}

.p-reference-material__relation .inner h2 {
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-material__relation .inner h2 {
    margin-bottom: 6%;
  }
}

.p-reference-material__relation .inner ul {
  max-width: 1080px;
}

.p-reference-material__relation .inner ul li a {
  font-size: 17px;
  font-size: 1.7rem;
  font-feature-settings: "palt";
}

@media screen and (max-width: 1023px) {
  .p-reference-material__relation .inner ul li a {
    font-size: 1.7vw;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-material__relation .inner ul li a {
    font-size: calc(15px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-operation {
  /* 空気式/電気式 */
}

.p-reference-operation__intro p {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__intro p {
    margin-bottom: 4%;
  }
}

.p-reference-operation__box {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box {
    padding: 5%;
  }
}

.p-reference-operation__box h2 {
  text-align: center;
  /*padding-bottom: 20px;
        border-bottom: 2px solid #1f4c9b;*/
  font-feature-settings: "palt";
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box h2 {
    font-size: calc(20px + 4 * (100vw - 320px)/450);
    /*padding-bottom: 3%;*/
    margin-bottom: 5%;
  }
}

.p-reference-operation__box h2 + p {
  margin-bottom: 30px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box h2 + p {
    margin-bottom: 4%;
  }
}

.p-reference-operation__box .operation-list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box .operation-list {
    flex-direction: column;
    margin-bottom: -5%;
  }
}

.p-reference-operation__box .operation-list > li {
  width: 31%;
  max-width: 366px;
  margin-right: 3.5%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  margin-bottom: 5%;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box .operation-list > li {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
    display: block;
  }
}

.p-reference-operation__box .operation-list > li:nth-child(3n) {
  margin-right: 0;
}

.p-reference-operation__box .operation-list > li h3 {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  color: #1f4c9b;
  text-align: center;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box .operation-list > li h3 {
    font-size: calc(19px + 4 * (100vw - 320px)/450);
    margin-bottom: 3%;
  }
}

.p-reference-operation__box .operation-list > li figure {
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box .operation-list > li figure {
    margin-bottom: 3%;
  }
}

.p-reference-operation__box .operation-list > li figure img {
  width: 100%;
}

.p-reference-operation__box .operation-list > li .btn-wh {
  width: 93%;
  margin: 20px auto 0;
  margin-top: auto;
  position: relative;
  top: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box .operation-list > li .btn-wh {
    width: 290px;
    margin-top: 5%;
    top: 0;
  }
}

.p-reference-operation__box.operation-sec02, .p-reference-operation__box.operation-attached {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box.operation-sec02, .p-reference-operation__box.operation-attached {
    margin-top: 8%;
  }
}

.p-reference-operation__box.operation-sec03 h2 {
  text-align: left;
  padding-bottom: 0;
  border-bottom: none;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box.operation-sec03 h2 {
    margin-bottom: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box.operation-sec03 .c-table--scroll {
    width: 100%;
    overflow-x: scroll;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-operation__box.operation-sec03 .c-table--scroll .reference-table {
    min-width: 800px;
  }
}

.p-reference-operation__box.operation-sec03 .c-table--scroll .reference-table th {
  width: 50%;
}

.p-reference-operation__box.operation-sec03 .c-table--scroll + p {
  margin-top: 1em;
}

.p-reference-operation .p-reference-training {
  margin-top: -80px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .p-reference-training {
    margin-top: -5%;
  }
}

.p-reference-operation .p-reference-training.operation-feature {
  margin-top: inherit;
}

.p-reference-operation .operation-point {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-point {
    flex-direction: column;
  }
}

.p-reference-operation .operation-point_box {
  width: 48%;
  margin-right: 4%;
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-point_box {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-point_box {
    width: 100%;
    margin-right: 0;
    padding: 5%;
    margin-bottom: 8%;
  }
}

.p-reference-operation .operation-point_box:last-child {
  margin-right: 0;
  margin-bottom: 0;
}

.p-reference-operation .operation-point_box h2 {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-point_box h2 {
    margin-bottom: 4%;
    text-align: center;
  }
}

.p-reference-operation .operation-point_box h2 + span {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-point_box h2 + span {
    display: block;
    background: #42b9f5;
    color: #fff;
    text-align: center;
    padding: 5px 10px;
    margin-bottom: 3.5%;
    font-size: calc(12px + 4 * (100vw - 320px)/450);
  }
  .p-reference-operation .operation-point_box h2 + span.week-point {
    background: #67a3ce;
  }
}

.p-reference-operation .operation-point_box ul li {
  font-size: 16px;
  font-size: 1.6rem;
  text-indent: -1.5em;
  margin-left: 1.5em;
  line-height: 1.4;
  margin-bottom: 1em;
}

.p-reference-operation .operation-point_box ul li:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-point_box ul li {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-operation .operation-feature {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature {
    padding: 5%;
  }
}

.p-reference-operation .operation-feature h2 {
  text-align: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature h2 {
    margin-bottom: 5%;
  }
}

.p-reference-operation .operation-feature_list {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  background: #eff3f8;
  border-radius: 10px;
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_list {
    max-width: 100%;
    padding: 5% 4%;
  }
}

.p-reference-operation .operation-feature_list ul li {
  font-size: 16px;
  font-size: 1.6rem;
  text-indent: -1.5em;
  margin-left: 1.5em;
  line-height: 1.4;
  margin-bottom: 1em;
}

.p-reference-operation .operation-feature_list ul li:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_list ul li {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-operation .operation-feature_movie {
  width: 100%;
  max-width: 800px;
  margin: 30px auto 0;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_movie {
    flex-direction: column;
    max-width: 100%;
    margin-top: 8%;
  }
}

.p-reference-operation .operation-feature_movie li {
  width: 47.5%;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_movie li {
    width: 65%;
    margin: 0 auto 5%;
  }
  .p-reference-operation .operation-feature_movie li a {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
  .p-reference-operation .operation-feature_movie li:last-child {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 480px) {
  .p-reference-operation .operation-feature_movie li {
    width: 100%;
  }
}

.p-reference-operation .operation-feature_sec {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec {
    margin-top: 10%;
  }
}

.p-reference-operation .operation-feature_sec .feature-ttl_h3 {
  color: #1f4c9b;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  padding-bottom: 15px;
  border-bottom: 2px solid #1f4c9b;
  margin-bottom: 20px;
  line-height: 1.3;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-ttl_h3 {
    font-size: calc(17px + 4 * (100vw - 320px)/450);
    padding-bottom: 3%;
    margin-bottom: 4%;
  }
}

.p-reference-operation .operation-feature_sec figure {
  margin-bottom: 1em;
}

.p-reference-operation .operation-feature_sec figure img {
  width: 100%;
}

.p-reference-operation .operation-feature_sec .feature-lead_txt {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-lead_txt {
    font-size: calc(15px + 4 * (100vw - 320px)/450);
    margin-bottom: 4%;
  }
}

.p-reference-operation .operation-feature_sec .feature-list li {
  font-size: 16px;
  font-size: 1.6rem;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-list li {
    font-size: calc(13px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-operation .operation-feature_sec .feature-list li:last-child {
  margin-bottom: 0;
}

.p-reference-operation .operation-feature_sec .feature-ttl_h3--type02 {
  color: #1f4c9b;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  background: #eff3f8;
  padding: 10px;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-ttl_h3--type02 {
    font-size: calc(16px + 4 * (100vw - 320px)/450);
    padding: 2.5% 10px;
    margin-bottom: 3%;
  }
}

.p-reference-operation .operation-feature_sec .feature-ttl_h3--type03 {
  color: #1f4c9b;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-ttl_h3--type03 {
    font-size: calc(16px + 4 * (100vw - 320px)/450);
    margin-bottom: 4%;
  }
}

.p-reference-operation .operation-feature_sec .feature-txt_box {
  text-align: center;
  font-feature-settings: "palt";
}

.p-reference-operation .operation-feature_sec .feature-txt_box span {
  display: block;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-txt_box span {
    font-size: calc(15px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-operation .operation-feature_sec .feature-detail {
  padding-top: 60px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-detail {
    padding-top: 0;
  }
}

.p-reference-operation .operation-feature_sec .feature-detail ul {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-detail ul {
    margin-top: 4%;
  }
}

.p-reference-operation .operation-feature_sec .feature-detail ul li {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  text-indent: -1.5em;
  margin-left: 1.5em;
  margin-bottom: 25px;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-detail ul li {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
    margin-bottom: 4%;
  }
}

.p-reference-operation .operation-feature_sec .feature-detail ul li:last-child {
  margin-bottom: 0;
}

.p-reference-operation .operation-feature_sec .feature-ex .feature-ttl_h3--type02 {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec .feature-ex {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: space-between;
  }
  .p-reference-operation .operation-feature_sec .feature-ex figure {
    width: 36%;
  }
  .p-reference-operation .operation-feature_sec .feature-ex figure img {
    width: 100%;
  }
  .p-reference-operation .operation-feature_sec .feature-ex .feature-ttl_h3--type02 {
    display: block;
  }
  .p-reference-operation .operation-feature_sec .feature-ex > div {
    width: 61%;
  }
}

.p-reference-operation .operation-feature_sec + .btn-wh {
  width: 290px;
  margin: 40px auto 0;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_sec + .btn-wh {
    width: 65%;
    margin-top: 8%;
  }
  .p-reference-operation .operation-feature_sec + .btn-wh a {
    font-size: calc(14px + 4 * (100vw - 320px)/450);
  }
}

@media screen and (max-width: 425px) {
  .p-reference-operation .operation-feature_sec + .btn-wh {
    width: 100%;
  }
}

.p-reference-operation .operation-feature_col-2 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_col-2 {
    flex-direction: column;
  }
}

.p-reference-operation .operation-feature_col-2 > div {
  width: 48%;
  margin-right: 4%;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_col-2 > div {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-reference-operation .operation-feature_col-2 > div:nth-child(2n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_col-2 > div:nth-child(2n) {
    margin-bottom: 0;
  }
}

.p-reference-operation .operation-feature_col-3 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_col-3 {
    flex-direction: column;
  }
}

.p-reference-operation .operation-feature_col-3 > div {
  width: 31%;
  margin-right: 3.5%;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_col-3 > div {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.p-reference-operation .operation-feature_col-3 > div:nth-child(3n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-reference-operation .operation-feature_col-3 > div:nth-child(3n) {
    margin-bottom: 0;
  }
}

.p-reference-type__sec {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  margin-bottom: 100px !important;
}

@media screen and (max-width: 767px) {
  .p-reference-type__sec {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-type__sec {
    margin-bottom: 10% !important;
  }
}

.p-reference-type__sec:last-of-type {
  margin-bottom: 0 !important;
}

.p-reference-type__sec h2 {
  text-align: center;
  padding-bottom: 20px;
  border-bottom: 2px solid #1f4c9b;
  margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .p-reference-type__sec h2 {
    padding-bottom: 3%;
    margin-bottom: 6%;
    font-size: calc(17px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-type__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  margin-bottom: -50px;
}

@media screen and (max-width: 767px) {
  .p-reference-type__list {
    margin-bottom: -5%;
  }
}

.p-reference-type__list > div {
  width: 18%;
  margin-right: 2%;
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .p-reference-type__list > div {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 5%;
  }
  .p-reference-type__list > div:nth-child(2n) {
    margin-right: 0;
  }
}

.p-reference-type__list > div:nth-child(5n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .p-reference-type__list > div:nth-child(5n) {
    margin-right: 4%;
  }
}

.p-reference-type__list > div h3 {
  color: #1f4c9b;
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}

@media screen and (max-width: 1024px) {
  .p-reference-type__list > div h3 {
    font-size: 22px;
    font-size: 2.2rem;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-type__list > div h3 {
    font-size: calc(17px + 4 * (100vw - 320px)/450);
    margin-bottom: 4%;
  }
}

.p-reference-type__list > div a {
  display: block;
  position: relative;
  overflow: hidden;
}

.p-reference-type__list > div a figure img {
  position: relative;
  width: 100%;
}

.p-reference-type__list > div a figure img.on {
  opacity: 0;
  position: absolute;
}

.p-reference-type__list > div a:hover img.off {
  opacity: 0;
  position: absolute;
}

.p-reference-type__list > div a:hover img.on {
  opacity: 1;
  position: relative;
}

.p-reference-type__list + .btn-wh {
  width: 340px;
  margin: 60px auto 0;
}

@media screen and (max-width: 767px) {
  .p-reference-type__list + .btn-wh {
    width: 290px;
    margin-top: 5%;
  }
}

.p-reference-type .p-reference-training {
  margin-top: -80px;
}

@media screen and (max-width: 767px) {
  .p-reference-type .p-reference-training {
    margin-top: -10%;
  }
}

.p-reference-connection__intro p {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-connection__intro p {
    margin-bottom: 5%;
  }
}

.p-reference-connection__box {
  background: #fff;
  box-shadow: 0 3px 36px rgba(0, 0, 0, 0.1);
  padding: 50px;
  border-radius: 10px;
  position: relative;
  z-index: 1;
  margin-top: 40px !important;
}

@media screen and (max-width: 767px) {
  .p-reference-connection__box {
    padding: 5%;
  }
}

@media screen and (max-width: 767px) {
  .p-reference-connection__box {
    margin-top: 5% !important;
  }
}

.p-reference-connection__box:first-of-type {
  margin-top: 0 !important;
}

.p-reference-connection__box h2 {
  padding-bottom: 20px;
  border-bottom: 2px solid #1f4c9b;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-reference-connection__box h2 {
    font-size: calc(21px + 4 * (100vw - 320px)/450);
    padding-bottom: 3%;
    margin-bottom: 3%;
  }
}

.p-reference-connection__box .connection-box {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .p-reference-connection__box .connection-box {
    flex-direction: column;
  }
}

.p-reference-connection__box .connection-box > div {
  width: 52%;
}

@media screen and (max-width: 767px) {
  .p-reference-connection__box .connection-box > div {
    width: 100%;
  }
}

.p-reference-connection__box .connection-box > div dl {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .p-reference-connection__box .connection-box > div dl {
    margin-top: 4%;
  }
}

.p-reference-connection__box .connection-box > div dl dt {
  color: #1f4c9b;
  margin-bottom: 15px;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .p-reference-connection__box .connection-box > div dl dt {
    margin-bottom: 3%;
    font-size: calc(16px + 4 * (100vw - 320px)/450);
  }
}

.p-reference-connection__box .connection-box figure {
  width: 46.29%;
}

@media screen and (max-width: 767px) {
  .p-reference-connection__box .connection-box figure {
    width: 100%;
    margin-top: 5%;
  }
}

.p-reference-connection__box .connection-box figure img {
  width: 100%;
}

.u-poppins {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
}

.u-font-min {
  font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 600;
}

.u-fs--12 {
  font-size: 12px !important;
  font-size: 1.2rem !important;
}

.u-fs--13 {
  font-size: 13px !important;
  font-size: 1.3rem !important;
}

.u-fs--14 {
  font-size: 14px !important;
  font-size: 1.4rem !important;
}

.u-fs--15 {
  font-size: 15px !important;
  font-size: 1.5rem !important;
}

.u-fs--16 {
  font-size: 16px !important;
  font-size: 1.6rem !important;
}

.u-fs--18 {
  font-size: 18px !important;
  font-size: 1.8rem !important;
}

.u-fs--21 {
  font-size: 21px !important;
  font-size: 2.1rem !important;
}

.u-fs--24 {
  font-size: 24px !important;
  font-size: 2.4rem !important;
}

.u-fs--30 {
  font-size: 30px !important;
  font-size: 3rem !important;
}

.u-fs--36 {
  font-size: 36px !important;
  font-size: 3.6rem !important;
}

.u-fs--40 {
  font-size: 40px !important;
  font-size: 4rem !important;
}

.u-fs--42 {
  font-size: 42px !important;
  font-size: 4.2rem !important;
}

.u-fs--48 {
  font-size: 48px !important;
  font-size: 4.8rem !important;
}

.u-fw--b {
  font-weight: 700;
}

.u-tal {
  text-align: left !important;
}

.u-tac {
  text-align: center !important;
}

.u-tar {
  text-align: right !important;
}

@media print, screen and (min-width: 768px) {
  .u-tab, .u-sp {
    display: none !important;
  }
  .u-pc-none {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .u-pc, .u-tab {
    display: none !important;
  }
  .u-sp-none {
    display: none !important;
  }
}

.u-mt0 {
  margin-top: 0px !important;
}

.u-mt5 {
  margin-top: 5px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-mt25 {
  margin-top: 25px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-mt35 {
  margin-top: 35px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-mt45 {
  margin-top: 45px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-mt55 {
  margin-top: 55px !important;
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-mt65 {
  margin-top: 65px !important;
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-mt75 {
  margin-top: 75px !important;
}

.u-mt80 {
  margin-top: 80px !important;
}

.u-mt85 {
  margin-top: 85px !important;
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-mt95 {
  margin-top: 95px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

@media screen and (max-width: 767px) {
  .u-t-mt0 {
    margin-top: 0px !important;
  }
  .u-t-mt5 {
    margin-top: 5px !important;
  }
  .u-t-mt10 {
    margin-top: 10px !important;
  }
  .u-t-mt15 {
    margin-top: 15px !important;
  }
  .u-t-mt20 {
    margin-top: 20px !important;
  }
  .u-t-mt25 {
    margin-top: 25px !important;
  }
  .u-t-mt30 {
    margin-top: 30px !important;
  }
  .u-t-mt35 {
    margin-top: 35px !important;
  }
  .u-t-mt40 {
    margin-top: 40px !important;
  }
  .u-t-mt45 {
    margin-top: 45px !important;
  }
  .u-t-mt50 {
    margin-top: 50px !important;
  }
  .u-t-mt55 {
    margin-top: 55px !important;
  }
  .u-t-mt60 {
    margin-top: 60px !important;
  }
  .u-t-mt65 {
    margin-top: 65px !important;
  }
  .u-t-mt70 {
    margin-top: 70px !important;
  }
  .u-t-mt75 {
    margin-top: 75px !important;
  }
  .u-t-mt80 {
    margin-top: 80px !important;
  }
  .u-t-mt85 {
    margin-top: 85px !important;
  }
  .u-t-mt90 {
    margin-top: 90px !important;
  }
  .u-t-mt95 {
    margin-top: 95px !important;
  }
  .u-t-mt100 {
    margin-top: 100px !important;
  }
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .u-s-mt0 {
    margin-top: 0px !important;
  }
  .u-s-mt5 {
    margin-top: 5px !important;
  }
  .u-s-mt10 {
    margin-top: 10px !important;
  }
  .u-s-mt15 {
    margin-top: 15px !important;
  }
  .u-s-mt20 {
    margin-top: 20px !important;
  }
  .u-s-mt25 {
    margin-top: 25px !important;
  }
  .u-s-mt30 {
    margin-top: 30px !important;
  }
  .u-s-mt35 {
    margin-top: 35px !important;
  }
  .u-s-mt40 {
    margin-top: 40px !important;
  }
  .u-s-mt45 {
    margin-top: 45px !important;
  }
  .u-s-mt50 {
    margin-top: 50px !important;
  }
  .u-s-mt55 {
    margin-top: 55px !important;
  }
  .u-s-mt60 {
    margin-top: 60px !important;
  }
  .u-s-mt65 {
    margin-top: 65px !important;
  }
  .u-s-mt70 {
    margin-top: 70px !important;
  }
  .u-s-mt75 {
    margin-top: 75px !important;
  }
  .u-s-mt80 {
    margin-top: 80px !important;
  }
  .u-s-mt85 {
    margin-top: 85px !important;
  }
  .u-s-mt90 {
    margin-top: 90px !important;
  }
  .u-s-mt95 {
    margin-top: 95px !important;
  }
  .u-s-mt100 {
    margin-top: 100px !important;
  }
}

.page-id-36 .l-contact,
.page-id-38 .l-contact,
.parent-pageid-36 .l-contact,
.parent-pageid-38 .l-contact,
.page-id-11 .l-contact {
  background: #fff;
}

.post-type-archive-news .l-bnr {
  display: none;
}

.page-id-24 .p-page-menu.company {
  padding-top: 60px;
}

@media screen and (max-width: 767px) {
  .page-id-24 .p-page-menu.company {
    padding-top: 10%;
  }
}

/* pageNavi */
.wp-pagenavi {
  clear: both;
  text-align: center;
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .wp-pagenavi {
    margin-top: 10%;
  }
}

.wp-pagenavi a, .wp-pagenavi span {
  color: #fff;
  background-color: #b4b4b4;
  padding: 6px 10px;
  margin: 0 2px;
  white-space: nowrap;
  border-radius: 3px;
  transition: .2s ease-in-out;
  text-align: center;
  text-decoration: none;
  font-size: 14px;
  font-size: 1.4rem;
}

@media screen and (min-width: 1px) and (max-width: 425px) {
  .wp-pagenavi a, .wp-pagenavi span {
    font-size: 2.45vw;
  }
}

.wp-pagenavi a:hover {
  background-color: #d7d7d7;
}

.wp-pagenavi span.current {
  color: #fff;
  background-color: #00459F;
  font-weight: 700;
}

#overlay {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 99;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  visibility: hidden;
  transition: opacity .65s, visibility .65s;
}

#overlay.l-overlay-active {
  opacity: 1;
  visibility: visible;
}

#cookie-notice {
  font-family: inherit !important;
}

#cookie-notice .cookie-notice-container {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 1.2em 6em 1.2em 1.2em !important;
  display: flex !important;
  align-items: flex-end;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  #cookie-notice .cookie-notice-container {
    display: block !important;
    padding-right: 1.2em !important;
  }
}

#cookie-notice .cookie-notice-container .cn-text-container {
  flex: 1;
  line-height: 1.5;
  text-align: left;
}

@media screen and (max-width: 768px) {
  #cookie-notice .cookie-notice-container .cn-text-container {
    flex: unset;
    margin-bottom: 1em;
  }
}

#cookie-notice .cookie-notice-container .cn-text-container a {
  color: #fff;
}

#cookie-notice .cookie-notice-container .cn-text-container a:hover {
  text-decoration: underline;
}

#cookie-notice .cookie-notice-container .cn-buttons-container .cookie-agree {
  width: auto;
}

#cookie-notice .cookie-notice-container .cn-buttons-container .cookie-agree[id="cn-refuse-cookie"] {
  color: #333;
  background: #fff;
}

#cookie-notice.cookie-notice-hidden .cookie-notice-container {
  display: none !important;
}


/*# sourceMappingURL=style.css.map*/