@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;500;600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP&display=swap");
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, main, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/**
 * Base
 */
button,
input[type="button"],
input[type="checkbox"],
input[type="image"],
input[type="radio"],
input[type="reset"],
input[type="submit"],
label,
select {
  cursor: pointer;
}

button,
input,
select,
textarea {
  vertical-align: top;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: none;
  padding: 0;
}

button,
input[type="text"],
textarea {
  border-radius: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  font-family: inherit;
  line-height: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button {
  margin: 0;
  border: none;
  padding: 0;
  background-color: transparent;
  overflow: visible;
  outline: none;
}

input[type="text"]::-webkit-input-placeholder {
  opacity: 1;
}

input[type="text"]:-ms-input-placeholder {
  opacity: 1;
}

input[type="text"]::-ms-input-placeholder {
  opacity: 1;
}

input[type="text"]::placeholder {
  opacity: 1;
}

img {
  vertical-align: top;
}

html,
body {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 100%;
}

html *,
body * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html *[lang="en"],
body *[lang="en"] {
  font-family: 'Futura', sans-serif;
}

html {
  font-size: 62.5%;
  width: 100%;
  min-width: calc(1080px + (12.08% * 2));
  min-width: 1424px;
}

@media screen and (max-width: 767px) {
  html {
    min-width: 0;
  }
}

body {
  width: 100%;
  min-width: 1080px;
  min-width: calc(1080px + (12.08% * 2));
  color: #000;
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", Verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  line-height: 1.8;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -moz-osx-font-smoothing: unset;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-text-size-adjust: 100%;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  body {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
  }
}

@media screen and (max-width: 767px) {
  body {
    min-width: 0;
    font-size: 1.3rem;
    line-height: 2;
  }
}

/**
 * Header
 */
.l-header header {
  /*--subNavH: 40px;*/
  position: absolute;
  left: 0;
  top: 0;
  z-index: 10000;
  width: 100%;
  /* background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 100%); */
}

.l-header header > .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  padding: 0;
  height: 95px;
  background-color: #ffffff;
  -webkit-transition-property: height, background-color;
  transition-property: height, background-color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}

html.-headerTransparent:not(.-gMenuActive):not(.-searchMenuActive) .l-header header > .container {
  background-color: transparent;
}

html.-scrolled .l-header header > .container {
  height: 95px;
}

.l-header header .logoArea {
  position: relative;
  z-index: 1;
  width: 22%;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  background-color: #fff;
  padding-left: 5px;
  padding-top: 5px;
}

.l-header header .logoArea .logo {
  height: 100%;
}

.l-header header .logoArea .logo a {
  display: -webkit-box;
  display: -ms-flexbox;
  /* display: flex; */
  width: 100%;
  height: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.l-header header .logoArea .logo a > span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.l-header header .navArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.l-header header .navArea nav {
  height: 100%;
}

.l-header header .navArea .gNavList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 30%;
  padding: 0 18px;
  font-size: 1.3rem;
}

.l-header header .navArea .gNavList > li > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding: 10px 18px;
  height: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #000;
  line-height: 2;
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  html.-headerTransparent:not(.-searchMenuActive) .l-header header .navArea .gNavList > li > a {
    color: #FFF !important;
  }
}

.l-header header .navArea .gNavList > li > a[target="_blank"] .text {
  position: relative;
  padding-right: 1.33em;
}

.l-header header .navArea .gNavList > li > a[target="_blank"] .text::after {
  content: '';
  position: absolute;
  top: calc(50% - 5px);
  right: 0;
  width: 11px;
  height: 11px;
  background: url(../images/common/icon_newWin01.png) center/contain no-repeat;
}

[data-whatintent="mouse"] .l-header header .navArea .gNavList > li:hover > a .text {
  position: relative;
}

[data-whatintent="mouse"] .l-header header .navArea .gNavList > li:hover > a .text::before {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #004EA2;
}

.l-header header .navArea .gNavList .subMenu {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  padding: 0 12.08%;
  background-color: white;
  -webkit-transition-property: opacity, visibility;
  transition-property: opacity, visibility;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}

html.-searchMenuActive .l-header header .navArea .gNavList .subMenu {
  display: none;
}

.l-header header .navArea .gNavList .subMenu__container {
  padding: 35px 0;
}

.l-header header .navArea .gNavList .subMenu__container .linkBtnList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: -40px 0 0 -40px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.l-header header .navArea .gNavList .subMenu__container .linkBtnList li {
  padding: 40px 0 0 20px;
  width: 20%;
}

@media screen and (max-width: 1200px) {
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList li {
    width: 50%;
  }
}

.l-header header .navArea .gNavList .subMenu__container .linkBtnList a {
  display: block;
  position: relative;
  text-decoration: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  color: #000;
}

[data-whatintent="mouse"] .l-header header .navArea .gNavList .subMenu__container .linkBtnList a:hover {
  opacity: 0.8;
}

.l-header header .navArea .gNavList .subMenu__container .linkBtnList a[target="_blank"] .text {
  position: relative;
  padding-right: 1.33em;
}

.l-header header .navArea .gNavList .subMenu__container .linkBtnList a[target="_blank"] .text::after {
  content: '';
  position: absolute;
  top: calc(50% - 5px);
  right: 0;
  width: 11px;
  height: 11px;
  background: url(../images/common/icon_newWin01.png) center/contain no-repeat;
}

.l-header header .navArea .gNavList .subMenu__container .linkBtnList a[target="_blank"] .text::after {
  background-image: url(../images/common/icon_newWin03.png);
}

.l-header header .navArea .gNavList .subMenu__container .linkBtnList [class="figure"] img {
  width: 100%;
  height: auto;
}

.l-header header .navArea .gNavList .subMenu__container .linkBtnList .text {
  display: inline-block;
  margin-top: calc(13px - 0.5em);
  line-height: 2;
}

[data-whatintent="mouse"] .l-header header .navArea .gNavList > li:hover .subMenu {
  opacity: 1;
  visibility: visible;
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
}

.l-header header .contactBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 9vw;
  background-color: #ec6d81;
  color: #fff;
  line-height: 2;
  font-weight: bold;
  text-decoration: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  font-size:1.2rem;
}
.l-header header .contactBtn-shika {
  width: 7.5vw;
  font-size:1.2rem;
  text-align: center;
  background-color: #004F9F;
  color: #fff;
}
.l-header header .contactBtn-ippan {
  width: 7.5vw;
  background-color: #007CC3;
  font-size:1.2rem;
  text-align: center;
  color: #fff;
}

[data-whatintent="mouse"] .l-header header .contactBtn:hover {
  opacity: 0.8;
}

.l-header header .contactBtn .icon {
  display: block;
  width: 29px;
  height: 21px;
  background: url(../images/common/icon_mail01.png) center/contain no-repeat;
}

.l-header header .contactBtn .text {
  margin-top: calc(15px - .5em);
}

.l-header header .gMenuBtn {
  position: absolute;
  width: 66px;
  height: 100%;
  text-align: center;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}

html.-headerTransparent:not(.-gMenuActive):not(.-searchMenuActive) .l-header header .gMenuBtn {
  color: #FFF;
}

.l-header header .gMenuBtn .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 0;
}

.l-header header .gMenuBtn .icon > span {
  position: relative;
  width: 21px;
  height: 2px;
  background-color: currentcolor;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.l-header header .gMenuBtn .icon > span::before, .l-header header .gMenuBtn .icon > span::after {
  content: '';
  position: absolute;
  left: 0;
  width: 21px;
  height: 2px;
  background-color: currentcolor;
}

.l-header header .gMenuBtn .icon > span::before {
  top: -8px;
}

.l-header header .gMenuBtn .icon > span::after {
  bottom: -8px;
}

.l-header header .gMenuBtn.-active {
  background-color: rgba(255, 255, 255, 0.9);
}

.l-header header .gMenuBtn.-active .icon {
  position: relative;
}

.l-header header .gMenuBtn.-active .icon::before, .l-header header .gMenuBtn.-active .icon::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  left: calc(50% - 11px);
  width: 21px;
  height: 2px;
  background-color: #004fa3;
}

.l-header header .gMenuBtn.-active .icon::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.l-header header .gMenuBtn.-active .icon::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.l-header header .gMenuBtn.-active .icon > span {
  opacity: 0;
}

.l-header header .gMenuBtn {
  display: none;
}

.l-header header .gMenuBtn .icon rect {
  fill: currentColor;
}

.l-header__overlay {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9000;
  width: 100%;
  height: 100%;
}

.pNavMenuHamExternal {
  text-align: right;
  margin: 5px;
}
.pNavMenuHamExternal li {
  font-size: 80%;
  font-weight: bold;
  background-color:#ee8209;
  display: inline-flex;
  margin: 5px;
  padding: 3px 15px;
  text-align: center;
  border-radius: 5px;
}
.pNavMenuHamExternal li a {
  color: #ffffff;
  text-decoration:none;
}
.pNavMenuHamExternal .bottom-english {
  font-size: 75%;
  background-color:#8cbee0;
  display: inline-flex;
  margin: 5px;
  padding: 3px 15px;
  text-align: center;
  border-radius: 5px;
}
.linkBtnList p.text {
  font-size: 0.9em;
}

@media screen and (max-width: 767px) {
  .pNavMenuHamExternal {
    text-align:center;
    margin: 30px 0px;
  }
}

@media screen and (max-width: 767px) {
  .l-header header > .container {
    height: 56px !important;
  }
  .l-header header .logoArea {
    position: relative;
    z-index: 1;
    width: 54%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .l-header header .logoArea img {
    width: 180px;
    height: auto;
  }
  .l-header header .navArea {
    display: none;
    position: absolute;
    left: 0;
    top: 100%;
    padding: 0 6.67% 108px;
    width: 100%;
    height: auto;
    background-color: white;
    /* -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.7);
    box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.7); */
    overflow-y: auto;
  }
  .l-header header .navArea::before {
    left: 6.67%;
  }
  .l-header header .navArea::after {
    right: calc(6.67% - 1px);
  }
  .l-header header .navArea nav {
    position: relative;
    height: auto;
    min-height: 100%;
  }
  .l-header header .navArea nav::before, .l-header header .navArea nav::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
  }
  .l-header header .navArea nav::before {
    left: 0;
  }
  .l-header header .navArea nav::after {
    left: 100%;
  }
  .l-header header .navArea .gNavList {
    display: block;
    padding: 0;
  }
  .l-header header .navArea .gNavList > li {
    border-bottom: 1px solid #bababa;
  }
  [data-whatintent="mouse"] .l-header header .navArea .gNavList > li:hover > a .text::before {
    display: none;
  }
  .l-header header .navArea .gNavList > li.-active {
    border-bottom: 1px solid transparent;
  }
  .l-header header .navArea .gNavList > li > a {
    position: relative;
    padding: 10px 50px 10px calc(12 / 375 * 100vw);
    height: 60px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    font-size: 1.6rem;
  }
  .l-header header .navArea .gNavList > li > a::before {
    content: none;
  }
  .l-header header .navArea .gNavList > li > a[target="_blank"] > .text::after {
    content: none;
  }
  .l-header header .navArea .gNavList > li > a > .arrow {
    position: absolute;
    width: 26px;
    height: 6px;
    color: #004fa3;
    -webkit-transition: color .3s;
    transition: color .3s;
    right: 20px;
  }
  .l-header header .navArea .gNavList > li > a > .arrow::before, .l-header header .navArea .gNavList > li > a > .arrow::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: currentColor;
    height: 1px;
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
  }
  .l-header header .navArea .gNavList > li > a > .arrow::before {
    width: 100%;
  }
  .l-header header .navArea .gNavList > li > a > .arrow::after {
    width: 5px;
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .l-header header .navArea .gNavList > li > a > .arrow::before {
    width: 16px;
  }
  .l-header header .navArea .gNavList > li > a .accordionIcon {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 50px;
    color: #004fa3;
  }
  .l-header header .navArea .gNavList > li > a .accordionIcon::before, .l-header header .navArea .gNavList > li > a .accordionIcon::after {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    top: calc(50% - 3px);
    left: calc(50% - 3px);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .l-header header .navArea .gNavList > li > a .accordionIcon::before {
    opacity: 0;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
  }
  .l-header header .navArea .gNavList > li > a .accordionIcon::after {
    opacity: 1;
    border-bottom: 2px solid currentColor;
    border-left: 2px solid currentColor;
  }
  .l-header header .navArea .gNavList > li > a.-active .accordionIcon::before {
    opacity: 1;
  }
  .l-header header .navArea .gNavList > li > a.-active .accordionIcon::after {
    opacity: 0;
  }
  .l-header header .navArea .gNavList .subMenu {
    display: none;
    opacity: 1;
    visibility: visible;
    position: static;
    padding: 0;
  }
  .l-header header .navArea .gNavList .subMenu::before {
    content: none;
  }
  .l-header header .navArea .gNavList .subMenu__container {
    border-top: 1px solid #bababa;
    padding: 0;
    background-color: #fff;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList {
    display: block;
    margin: 0;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList li {
    border-bottom: 1px solid #eaeaea;
    padding: 0;
    width: 100%;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList a {
    position: relative;
    padding: calc(19px - 0.5em) 25px;
    font-size: 1.4rem;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList a[target="_blank"] .text {
    width: 100%;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList a[target="_blank"] .text:after {
    right: -10px;
    width: 16px;
    height: 16px;
    background: url(../images/common/icon_newWin04.png) center/contain no-repeat;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList a[target="_blank"] .arrow {
    display: none;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList .figure {
    display: none;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList .text {
    position: static;
    margin-top: 0;
    font-weight: normal;
    line-height: inherit;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList .arrow {
    position: absolute;
    width: 26px;
    height: 6px;
    color: #004fa3;
    -webkit-transition: color .3s;
    transition: color .3s;
    top: calc(50% - 6px);
    right: 10px;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList .arrow::before, .l-header header .navArea .gNavList .subMenu__container .linkBtnList .arrow::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: currentColor;
    height: 1px;
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList .arrow::before {
    width: 100%;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList .arrow::after {
    width: 5px;
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .l-header header .navArea .gNavList .subMenu__container .linkBtnList .arrow::before {
    width: 16px;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkList {
    display: block;
    margin: 0;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkList > li {
    padding: 0;
    width: auto;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkList > li + li {
    margin-top: 12px;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkList a {
    padding-left: 0;
    font-size: 1.4rem;
  }
  .l-header header .navArea .gNavList .subMenu__container .linkList a::before {
    content: none;
  }
  .l-header header .navArea .gNavList .subMenu__container .hdgMd + .linkList {
    padding: calc(16 / 375 * 100vw);
    background-color: #F5F5F5;
  }
  .l-header header .navArea .gNavList .subMenu__image {
    display: none;
  }
  .l-header header .navArea .subNavList {
    display: block;
    position: static;
    padding: 34px calc(12 / 375 * 100vw);
  }
  .l-header header .navArea .subNavList li + li {
    margin: 13px 0 0;
  }
  .l-header header .navArea .subNavList a {
    color: #f1f3f6;
    font-size: 1.4rem;
  }
  .l-header header .gMenuBtn {
    display: block;
    top: 0;
    right: 25.73%;
  }
  .l-header header .gMenuBtn .text {
    font-size: 1.4rem;
  }
  .l-header header .contactBtn {
    width: 25.73%;
    font-size: 0.8rem;
  }
  .l-header header .contactBtn .icon {
    width: 28px;
    height: 20px;
  }
  .l-header header .contactBtn .text {
    margin-top: calc(8px - .5em);
  }
}


/**
 * Footer
 */
.l-footer {
  position: relative;
  margin-top: 120px;
  background-color: #004fa3;
}

.l-footer .c-container .footer-nav {
  padding: 85px 0 87px;
}

.l-footer .c-container .footer-nav nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.l-footer .c-container .footer-nav nav .footer-navArea {
  padding: 0 2em 0 0;
  width: 26.45%;
}

.l-footer .c-container .footer-nav nav .footer-navArea:last-of-type {
  width: 20.65%;
  padding: 0;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle a {
  text-decoration: none;
}

[data-whatintent="mouse"] .l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle a:not([href]):hover {
  color: #fff;
  text-decoration: none;
}

[data-whatintent="mouse"] .l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle a:hover {
  color: #fff;
  text-decoration: underline;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle a .text {
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 2.5;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit > span {
  color: #fff;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList {
  position: relative;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList .footer-recruitText {
  position: relative;
  display: inline-block;
  color: #fff;
}

[data-whatintent="mouse"] .l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList .footer-recruitText:hover {
  text-decoration: underline;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList .footer-recruitText + .footer-recruitText {
  margin-left: 0.5em;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList .footer-recruitText[target="_blank"] span::after {
  bottom: 3px;
  width: 11px;
  height: 11px;
  background-image: url(../images/common/icon_newWin01.png);
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList .footer-recruitText[target="_blank"] .c-link__text {
  padding-right: 15px;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList::after {
  margin-left: 0.5em;
  content: '/';
  color: #fff;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList:last-of-type {
  margin-left: 0.5em;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitList:last-of-type::after {
  content: '';
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-navList {
  margin-top: 17px;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-navList li a {
  text-decoration: none;
}

[data-whatintent="mouse"] .l-footer .c-container .footer-nav nav .footer-navArea .footer-navList li a:hover {
  color: #fff;
  text-decoration: underline;
}

.l-footer .c-container .footer-nav nav .footer-navArea .footer-navList li a .text {
  color: #fff;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 2.7;
}

.l-footer .footer-underArea {
  text-align: center;
  background-color: #fff;
  padding: 36px 0 39px;
}

.l-footer .footer-underArea .footer-Copyright {
  margin-top: 10px;
}

.l-footer .footer-underArea .footer-Copyright small {
  font-size: 1rem;
}
.footer-logo-iso {
  text-align: center;
  margin-top: 100px;
}

@media screen and (max-width: 767px) {
  .l-footer {
    position: relative;
    margin-top: 68px;
    background-color: #004fa3;
  }
  .l-footer .c-container .footer-nav {
    padding: 30px 0 32px;
  }
  .l-footer .c-container .footer-nav nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0;
    width: 100%;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea:last-of-type {
    width: 100%;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle {
    width: 50%;
    line-height: 2.45;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle:nth-of-type(odd) {
    padding-right: 4.8%;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle:nth-of-type(even) {
    padding-left: 4.8%;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle a {
    text-decoration: none;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-navTitle a .text {
    color: #fff;
    font-size: 1.2rem;
    font-weight: normal;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit {
    line-height: 2.45;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit > span {
    font-size: 1.2rem;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-recruit .footer-recruitText .c-link__text {
    font-size: 1.2rem;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea .footer-navList {
    display: none;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea--1col .footer-navTitle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
  }
  .l-footer .c-container .footer-nav nav .footer-navArea--1col .footer-recruit .footer-recruitText[target="_blank"] span::after {
    bottom: calc(50% - 7.5px);
  }
  .l-footer .footer-underArea {
    text-align: center;
    background-color: #fff;
    padding: 15px 0 25px;
  }
  .l-footer .footer-underArea .footer-Copyright {
    margin-top: 0;
  }
  .l-footer .footer-underArea .footer-Copyright small {
    font-size: 1rem;
  }
}

/**
 * Wrapper
 */
.l-wrapper {
  width: 100%;
}

/**
 * Contents
 */
.l-contents {
  padding-top: 95px;
}

@media screen and (max-width: 767px) {
  .l-contents {
    padding-top: 56px;
  }
}

/**
 * Page
 */
/**
 * pg-top
 */
.pg-top {
  /* 経営理念 */
  /* 3つの事業展開 */
}

@media screen and (min-width: 768px) {
  .pg-top .l-header header .navArea .gNavList > li > a {
    color: rgb(0, 0, 0);
  }
}

.pg-top .l-header header .gMenuBtn {
  color: #0989d2;
}

.pg-top .l-contents {
  padding-top: 0;
}

.pg-top .c-newsList > li:first-of-type .c-newsList__item {
  border-top: none;
  padding-top: 0;
}

.pg-top .c-newsList__item {
  display: block;
}

.pg-top .c-newsList__meta {
  width: 100%;
}

.pg-top .c-newsList__cat {
  margin-left: 30px;
}

.pg-top .c-newsList__title {
  width: 100%;
  margin-top: calc(25px - .4em);
}

.pg-top .c-newsList--noArticle .c-newsList__title {
  text-align: left;
}

@media screen and (max-width: 767px) {
  .pg-top .c-newsList__title {
    margin-top: calc(15px - .5em);
  }
  .pg-top .c-newsList__cat {
    margin-left: 13px;
  }
}

.pg-top .l-footer {
  margin-top: 136px;
}

.pg-top .mainvisual {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  min-height: 700px;
}

.pg-top .mainvisual .mainvisual-wrapper {
  width: 100%;
  height: 100%;
}

.pg-top .mainvisual .mainvisual-slide {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.pg-top .mainvisual__inner {
  height: 100%;
  position: relative;
  z-index: 2;
  padding-top: 90px;
  margin: 0 auto;
  max-width: 1424px;
}

.pg-top .mainvisual__image {
  position: absolute;
  top: 20px;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0;
}

/*.pg-top .mainvisual .mainvisual__copy {
  position: absolute;
  bottom: calc((164 / 1424) * 100vw);
  left: 12.08%;
  font-size: 5.6rem;
  font-weight: bold;
  line-height: 1.54;
  letter-spacing: 0.1em;
}*/

/*.pg-top .mainvisual .mainvisual__copy::before {
  content: '';
  opacity: 0.71;
  position: absolute;
  top: calc((170 / 1424) * -100vw);
  right: calc((56 / 1424) * -100vw);
  width: calc((967 / 1424) * 100vw);
  padding-top: calc((557 / 1424) * 100vw);
  background: url(../images/top/mv_bg01.png) center/cover no-repeat;
}*/

/*.pg-top .mainvisual .mainvisual__copy .text {
  display: inline-block;
  position: relative;
  border-bottom: 4px solid #0086d1;
  color: #004fa3;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  //opacity: 0;
}*/

.pg-top .mainvisual img {
  width: 100%;
}
.pg-top .mainvisual .mainvisual__catch {
  position: absolute;
  z-index: 2;
  opacity: 0;
}
.pg-top .mainvisual .mainvisual__box {
  position: absolute;
  z-index: 2;
  text-align: center;
}
.pg-top .mainvisual .mainvisual__copy {
  text-align: center;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.pg-top .mainvisual .mainvisual__copy b {
  display: inline-block;
  position: relative;
  padding: 13px 14px 14px 14px;
  line-height: 1;
}
.pg-top .mainvisual .mainvisual__copy b + b {
  margin-top: 0.5em;
}
.pg-top .mainvisual .mainvisual__copy b::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  /* background: linear-gradient(135deg, #007bc7 0%, #459fd8 41.9%, #0e82ca 100%); */
  position: absolute;
  top: 0;
  left: 0;
  transform: scaleX(0);
  transform-origin: left center;
  border-radius: 5px;
}
.pg-top .mainvisual .mainvisual__copy span {
  position: relative;
  z-index: 2;
  font-size: 4.0rem;
  font-weight: 550;
  color: #fff;
  line-height: 1;
  letter-spacing: 0.05em;
  opacity: 0;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.pg-top .mainvisual .mainvisual__copy span.blue {
  position: relative;
  z-index: 2;
  font-size: 4.0rem;
  font-weight: 550;
  color: #0989d2;
  line-height: 1;
  letter-spacing: 0.05em;
  opacity: 0;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.pg-top .mainvisual .mainvisual__txt {
  font-size: 1.6rem;
  margin-top: 1.2em;
  font-weight: 700;
  opacity: 0;
}
.pg-top .mainvisual .mainvisual__txt span {
  display: inline-block;
  background: #fff;
  padding: 0 0.8em;
}
.pg-top .mainvisual-slide-01 .mainvisual__inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.pg-top .mainvisual-slide-01 .mainvisual__catch {
  width: 373px;
  top: 117px;
  left: 135px;
}
.pg-top .mainvisual-slide-01 .mainvisual__image {
  background-image: url(../images/top/mv_01_bg.jpg);
}
.pg-top .mainvisual-slide-01 .mainvisual-slide-01__box {
  text-align: center;
}
.pg-top .mainvisual-slide-01 .mainvisual-slide-01__ttl {
  width: 400px;
  margin: 0 auto;
  font-size: 38px;
  font-weight: 500;
  letter-spacing:0.4em!important;
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", Verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  opacity: 0;
}
.pg-top .mainvisual-slide-01 .mainvisual-slide-01__logo {
  width: 300px;
  margin: 25px auto 50px;
  opacity: 0;
}
.pg-top .mainvisual-slide-01 .mainvisual-slide-01__txt {
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", Verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  opacity: 0;
}

.pg-top .mainvisual-slide-02 .mainvisual__catch {
  width: 352px;
  top: 117px;
  left: 102px;
}
.pg-top .mainvisual-slide-02 .mainvisual__image {
  background-image: url(../images/top/mv_02_bg.jpg);
  background-position: center top;
}
.pg-top .mainvisual-slide-02 .mainvisual__box {
  top: 324px;
  left: 135px;
}

.pg-top .mainvisual-slide-03 .mainvisual__catch {
  width: 432px;
  bottom: 361px;
  right: 38px;
}
.pg-top .mainvisual-slide-03 .mainvisual__image {
  background-image: url(../images/top/mv_03_bg.jpg);
}
.pg-top .mainvisual-slide-03 .mainvisual__box {
  bottom: 56px;
  right: 117px;
}

.pg-top .mainvisual-slide-04 .mainvisual__catch {
  width: 548px;
  bottom: 332px;
  left: 62px;
}
.pg-top .mainvisual-slide-04 .mainvisual__image {
  background-image: url(../images/top/mv_04_bg.jpg);
}
.pg-top .mainvisual-slide-04 .mainvisual__box {
  bottom: 122px;
  left: 53px;
}

.pg-top .mainvisual-slide-05 .mainvisual__catch {
  width: 478px;
  bottom: 228px;
  left: 82px;
}
.pg-top .mainvisual-slide-05 .mainvisual__image {
  background-image: url(../images/top/mv_05_bg.jpg);
}
.pg-top .mainvisual-slide-05 .mainvisual__box {
  bottom: 35px;
  right: 34px;
}

@media all and (-ms-high-contrast: none) {
  .pg-top .mainvisual .mainvisual__copy .text {
    background: none;
  }
}

.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__image {
  animation: mvZoomOut 800ms;
  opacity: 1;
  transition-duration: 800ms;
}
.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__catch {
  opacity: 1;
  transition-duration: 1s;
  transition-delay: 0.5s;
}
.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__copy b::before {
  transform: scaleX(1);
  transition-duration: 0.5s;
  transition-delay: 0.7s;
}
.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__copy b:nth-child(2)::before {
  transition-delay: 0.8s;
}
.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__copy b:nth-child(3)::before {
  transition-delay: 0.9s;
}
.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__copy span {
  opacity: 1;
  transition-duration: 1s;
  transition-delay: 1.1s;
}
.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__copy b:nth-child(2) span {
  transition-delay: 1.2s;
}
.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__copy b:nth-child(3) span {
  transition-delay: 1.3s;
}
.pg-top .mainvisual .swiper-slide.swiper-slide-active .mainvisual__txt {
  opacity: 1;
  transition-duration: 1s;
  transition-delay: 1.3s;
}
.pg-top .mainvisual-slide-01.swiper-slide-active .mainvisual-slide-01__ttl {
  opacity: 1;
  transition-duration: 1.5s;
  transition-delay: 1s;
}
.pg-top .mainvisual-slide-01.swiper-slide-active .mainvisual-slide-01__logo {
  opacity: 1;
  transition-duration: 1.5s;
  transition-delay: 1s;
}
.pg-top .mainvisual-slide-01.swiper-slide-active .mainvisual-slide-01__txt {
  opacity: 1;
  transition-duration: 1.5s;
  transition-delay: 1s;
}

@keyframes mvZoomOut {
  0% {
    transform: scale(1.1);
  }

  100% {
    transform: scale(1);
  }
}


.pg-top .mainvisual__scroll {
  position: absolute;
  bottom: 33px;
  right: 60px;
  padding-bottom: 51px;
}

.pg-top .mainvisual__scroll::before, .pg-top .mainvisual__scroll::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: calc(50% - 1px);
  width: 1px;
  background-color: #000;
}

.pg-top .mainvisual__scroll::before {
  height: 46px;
}

.pg-top .mainvisual__scroll::after {
  height: 7px;
  -webkit-transform-origin: bottom;
  transform-origin: bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.pg-top .mainvisual__scroll .text {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 0.88;
  color: #0086d1;
  text-transform: uppercase;
}


@media screen and (max-width: 767px) {
  .pg-top .mainvisual {
    width: 100%;
    height: 100vh;
    min-height: 500px;
    max-height: 550px;
  }
  .pg-top .mainvisual__inner {
    padding-top: 56px;
  }
  /*.pg-top .mainvisual .mainvisual__copy {
    bottom: 63px;
    bottom: 16.43vw;
    left: 6.67%;
    font-size: 2.6rem;
  }
  .pg-top .mainvisual .mainvisual__copy::before {
    content: '';
    position: absolute;
    opacity: 0.81;
    top: calc((-120 / 750) * 100vw);
    right: calc((-159 / 750) * 100vw);
    width: calc((967 / 750) * 100vw);
    padding-top: calc((421 / 750) * 100vw);
  }
  .pg-top .mainvisual .mainvisual__copy .text {
    z-index: 1;
    border-bottom: 2px solid #0050a4;
  }*/
  .pg-top .mainvisual__scroll {
    display: none;
  }
  
  .pg-top .mainvisual .mainvisual__copy span {
    font-size: 2.5rem;
    text-shadow:1px 2px 3px #8c8c8cc2;
  }
  .pg-top .mainvisual .mainvisual__copy span.blue {
    font-size: 2.5rem;
    text-shadow: none;
  }
  .pg-top .mainvisual .mainvisual__txt {
    font-size: 1.25rem;
    margin-top: 1em;
  }
  .pg-top .mainvisual-slide-01 .mainvisual__catch {
    width: 188px;
    top: 50%;
    left: 15px;
    margin-top: -210px;
  }
  .pg-top .mainvisual-slide-01 .mainvisual__image {
    background-image: url(../images/top/mv_01_bg_sp.jpg);
  }
  .pg-top .mainvisual-slide-01 .mainvisual-slide-01__box {
    padding-top: 10px;
  }
  .pg-top .mainvisual-slide-01 .mainvisual-slide-01__ttl {
    width: 270px;
    font-size: 36px;
    letter-spacing:0.2em!important;
  }
  .pg-top .mainvisual-slide-01 .mainvisual-slide-01__logo {
    width: 230px;
    margin: 5px auto 15px;
  }
  .pg-top .mainvisual-slide-01 .mainvisual-slide-01__txt {
    font-size: 1.5rem;
    line-height: 1.6;
  }
  
  .pg-top .mainvisual-slide-02 .mainvisual__box {
    text-align: center;
  }
  .pg-top .mainvisual-slide-02 .mainvisual__copy {
    text-align: left;
    align-items: flex-start;
  }
  .pg-top .mainvisual-slide-02 .mainvisual__catch {
    width: 163px;
    top: 60px;
    left: 10px;
  }
  .pg-top .mainvisual-slide-02 .mainvisual__image {
    background-image: url(../images/top/mv_02_bg_sp.jpg);
  }
  .pg-top .mainvisual-slide-02 .mainvisual__box {
    top: inherit;
    bottom: 30px;
    left: 25px;
  }

  .pg-top .mainvisual-slide-03 .mainvisual__catch {
    width: 251px;
    bottom: inherit;
    right: inherit;
    top: 60px;
    left: 10px;
  }
  .pg-top .mainvisual-slide-03 .mainvisual__image {
    background-image: url(../images/top/mv_03_bg_sp.jpg);
  }
  .pg-top .mainvisual-slide-03 .mainvisual__box {
    width: 100%;
    bottom: 30px;
    right: 0;
  }

  .pg-top .mainvisual-slide-04 .mainvisual__catch {
    width: 273px;
    bottom: inherit;
    top: 60px;
    left: 1px;
  }
  .pg-top .mainvisual-slide-04 .mainvisual__image {
    background-image: url(../images/top/mv_04_bg_sp.jpg);
  }
  .pg-top .mainvisual-slide-04 .mainvisual__box {
    width: 100%;
    bottom: 30px;
    left: 0;
  }

  .pg-top .mainvisual-slide-05 .mainvisual__catch {
    width: 193px;
    bottom: 225px;
    left: 10px;
  }
  .pg-top .mainvisual-slide-05 .mainvisual__image {
    background-image: url(../images/top/mv_05_bg_sp.jpg);
  }
  .pg-top .mainvisual-slide-05 .mainvisual__box {
    width: 100%;
    bottom: 30px;
    right: 0;
  }
  .pg-top .mainvisual-slide-05  .mainvisual__copy span {
    font-size: 2rem;
  }
  
  
  
  
  
  
  
  
  
  
  
  
}

.pg-top .philosophy {
  position: relative;
  margin-top: 155px;
  padding-top: 75px;
  overflow: hidden;
}

.pg-top .philosophy__textArea {
  width: 60%;
}

.pg-top .philosophy__textArea .copy {
  display: inline-block;
  position: relative;
  margin-top: calc(118px - 0.08em);
  padding: 0 0.6em;
  font-size: 4.6rem;
  font-weight: bold;
  line-height: 1.17;
  letter-spacing: 0.3em;
}

.pg-top .philosophy__textArea .copy::before, .pg-top .philosophy__textArea .copy::after {
  content: '';
  position: absolute;
  top: 0;
  width: 12px;
  height: 60px;
}

.pg-top .philosophy__textArea .copy::before {
  left: 0;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
}

.pg-top .philosophy__textArea .copy::after {
  right: 0;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}

@media screen and (max-width: 767px) {
  .pg-top .philosophy__textArea .copy::before, .pg-top .philosophy__textArea .copy::after {
    content: '';
    position: absolute;
    top: 0;
    width: 7px;
    height: 36px;
  }
}

.pg-top .philosophy__textArea .lead {
  margin-top: calc(53px - 0.64em);
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.21em;
  line-height: 2.28;
  margin-bottom: 150px;
}
@media screen and (max-width: 767px) {
  .pg-top .philosophy__textArea .lead {
    margin-top: calc(53px - 0.64em);
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.21em;
    line-height: 2.28;
    margin-bottom: auto;
  }
}

.pg-top .philosophy__textArea .text {
  margin-top: calc(120px - 0.875em);
  line-height: 2.75;
  letter-spacing: 0.25em;
}

.pg-top .philosophy__imageArea {
  position: absolute;
  top: 0;
  left: 51.83%;
}

.pg-top .philosophy__link {
  margin-top: 64px;
}

@media screen and (max-width: 767px) {
  .pg-top .philosophy {
    margin-top: 40px;
    padding-top: 0;
  }
  .pg-top .philosophy__textArea {
    width: 100%;
  }
  .pg-top .philosophy__textArea .copy {
    margin-top: calc(66px - 0.1em);
    padding: 0 0.6em;
    font-size: 2.7rem;
    line-height: 1.2;
  }
  .pg-top .philosophy__textArea .lead {
    margin-top: calc(30px - 0.44em);
    font-size: 1.3rem;
    line-height: 1.88;
  }
  .pg-top .philosophy__textArea .text {
    margin-top: calc(67px - 0.52em);
    font-size: 1.3rem;
    line-height: 2.03;
  }
  .pg-top .philosophy__imageArea {
    width: calc(100% + (7.69% * 2));
    margin: 20px -7.69% 0;
    overflow: hidden;
    position: static;
  }
  .pg-top .philosophy__imageArea img {
    width: 100%;
    height: auto;
  }
  .pg-top .philosophy__link {
    margin-top: 36px;
  }
}

.pg-top .business {
  position: relative;
  margin-top: 142px;
}

.pg-top .business::before, .pg-top .business::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 71.25%;
  height: 0;
  background-color: #f1f3f6;
}

.pg-top .business::before {
  top: 48px;
  padding-top: 63.8%;
}

.pg-top .business::after {
  top: 63.8vw;
  right: 0;
  padding-top: 58.6%;
}

.pg-top .business__link {
  margin-top: 100px;
}

.pg-top .business .businessItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.pg-top .business .businessItem + .businessItem {
  margin-top: 130px;
}

.pg-top .business .businessItem__wrapper {
  margin-top: 85px;
}

.pg-top .business .businessItem__imageArea {
  width: 68.33%;
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

.pg-top .business .businessItem__imageArea img {
  width: 100%;
  height: auto;
}

.pg-top .business .businessItem__textArea {
  position: relative;
  z-index: 1;
  width: 42.75%;
}

.pg-top .business .businessItem__textArea .text {
  margin-top: calc(60px - 0.5em);
  line-height: 2;
  letter-spacing: 0.15em;
}

.pg-top .business .businessItem__title .num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  color: #004fa3;
  font-size: 2.6rem;
}

.pg-top .business .businessItem__title .num::after {
  content: '';
  display: inline-block;
  margin-left: 12px;
  width: 12px;
  height: 2px;
  background-color: #004fa3;
}

.pg-top .business .businessItem__title .title {
  display: inline-block;
  position: relative;
  margin-top: 10px;
  padding: 0 16px;
  font-size: 4rem;
  line-height: 1.45;
  color: #fff;
  letter-spacing: 0.15em;
}

.pg-top .business .businessItem__title .title::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 3px);
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  border-radius: 5px;
}

.pg-top .business .businessItem__title .num + .title {
  margin-top: calc(15px - 0.225em);
}

.pg-top .business .businessItem .c-readMore {
  margin-top: 38px;
}

.pg-top .business .businessItem:nth-of-type(odd) {
  margin-right: 6.87%;
}

.pg-top .business .businessItem:nth-of-type(odd) .businessItem__textArea {
  margin-left: 2.0vw;
}

.pg-top .business .businessItem:nth-of-type(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  margin-left: 6.87%;
}

.pg-top .business .businessItem:nth-of-type(even) .businessItem__textArea {
  margin-right: 2.0vw;
}

.pg-top .business .businessItem:nth-of-type(even) .c-readMore {
  margin-right: 2%;
}

@media screen and (max-width: 767px) {
  .pg-top .business {
    margin-top: 85px;
  }
  .pg-top .business::before, .pg-top .business::after {
    width: 73.3%;
  }
  .pg-top .business::before {
    top: 30px;
    padding-top: 209%;
  }
  .pg-top .business::after {
    top: 216vw;
    right: 0;
    padding-top: 225%;
  }
  .pg-top .business__link {
    margin-top: 68px;
  }
  .pg-top .business .businessItem {
    display: block;
  }
  .pg-top .business .businessItem + .businessItem {
    margin-top: 50px;
  }
  .pg-top .business .businessItem__wrapper {
    margin-top: 33px;
  }
  .pg-top .business .businessItem__imageArea {
    width: 90%;
  }
  .pg-top .business .businessItem__textArea {
    margin: -44px auto 0;
    width: calc(100% - 13.34%);
  }
  .pg-top .business .businessItem__textArea .text {
    margin-top: calc(41px - 0.5em);
    line-height: 2;
    font-size: 1.3rem;
  }
  .pg-top .business .businessItem__title .num {
    font-size: 1.8rem;
  }
  .pg-top .business .businessItem__title .num::after {
    margin-left: 8px;
    width: 6px;
    height: 1px;
  }
  .pg-top .business .businessItem__title .title {
    padding: 0 16px;
    font-size: 2.3rem;
    line-height: 1.56;
  }
  .pg-top .business .businessItem__title .num + .title {
    margin-top: calc(12px - 0.38em);
  }
  .pg-top .business .businessItem .c-readMore {
    margin-top: 10px;
  }
  .pg-top .business .businessItem:nth-of-type(odd) {
    margin-right: 0;
  }
  .pg-top .business .businessItem:nth-of-type(odd) .businessItem__textArea {
    margin-left: auto;
  }
  .pg-top .business .businessItem:nth-of-type(even) {
    margin-left: 0;
  }
  .pg-top .business .businessItem:nth-of-type(even) .businessItem__imageArea {
    margin-left: 10%;
  }
  .pg-top .business .businessItem:nth-of-type(even) .businessItem__textArea {
    margin-right: auto;
  }
  .pg-top .business .businessItem:nth-of-type(even) .c-readMore {
    margin-right: 0;
  }
}

.pg-top .about {
  margin-top: 152px;
}

.pg-top .about .aboutItems {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 82px;
}

.pg-top .about .aboutItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 50%;
}

.pg-top .about .aboutItem__imageArea {
  min-height: 0%;
  width: 100%;
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

.pg-top .about .aboutItem__imageArea img {
  width: 100%;
  height: auto;
}

.pg-top .about .aboutItem__textArea {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding: 44px 60px 0 78px;
  width: 100%;
}

.pg-top .about .aboutItem__textArea .title {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  padding: 38px 60px 38px 78px;
  width: 47.3%;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.72;
  background-color: #fff;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.pg-top .about .aboutItem__textArea .text {
  position: relative;
  line-height: 2;
  letter-spacing: 0.15em;
}

.pg-top .about .aboutItem:nth-of-type(odd) .aboutItem__textArea {
  padding-left: 13.34%;
}

.pg-top .about .aboutItem:nth-of-type(odd) .aboutItem__textArea .title {
  padding-left: 13.34%;
}

.pg-top .about .aboutItem:nth-of-type(even) .aboutItem__textArea {
  padding-right: 13.34%;
}

.pg-top .about__link {
  margin-top: 65px;
}

@media screen and (max-width: 767px) {
  .pg-top .about {
    margin-top: 86px;
  }
  .pg-top .about .aboutItems {
    display: block;
    margin-top: 62px;
  }
  .pg-top .about .aboutItem {
    display: block;
    width: 100%;
  }
  .pg-top .about .aboutItem + .aboutItem {
    margin-top: 52px;
  }
  .pg-top .about .aboutItem__textArea {
    display: block;
    padding: 31px 6.67% 0;
  }
  .pg-top .about .aboutItem__textArea .title {
    padding: 30px 6.67%;
    width: 50%;
    font-size: 1.6rem;
    line-height: 1.18;
  }
  .pg-top .about .aboutItem__textArea .text {
    font-size: 1.3rem;
  }
  .pg-top .about .aboutItem__textArea .c-readMore {
    margin-top: 10px;
  }
  .pg-top .about .aboutItem:nth-of-type(odd) .aboutItem__textArea {
    padding-left: 6.67%;
  }
  .pg-top .about .aboutItem:nth-of-type(odd) .aboutItem__textArea .title {
    padding-left: 6.67%;
  }
  .pg-top .about .aboutItem:nth-of-type(even) .aboutItem__textArea {
    padding-right: 6.67%;
  }
  .pg-top .about__link {
    margin-top: 55px;
  }
}

.pg-top .feature {
  position: relative;
  margin-top: 105px;
  padding: 110px 0 100px;
}

.pg-top .feature::before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: calc(100% - 12.08%);
  height: 100%;
  background-color: #f1f3f6;
}

.pg-top .feature .featureItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

.pg-top .feature .featureItem__imageArea {
  min-height: 0%;
}

.pg-top .feature .featureItem__imageArea img {
  width: 100%;
  height: auto;
}

.pg-top .feature .featureItem__textArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  position: relative;
  padding: 34px 38px 47px;
  background-color: #fff;
}

.pg-top .feature .featureItem__textArea::before {
  content: '';
  position: absolute;
  top: 47px;
  left: 0;
  height: 1px;
  width: 17px;
  background-color: #004ea2;
}

.pg-top .feature .featureItem__textArea .title {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.5;
}

.pg-top .feature .featureItem__textArea .text {
  margin-top: calc(22px - 0.4em);
}

.pg-top .feature .featureItem__textArea .c-readMore {
  margin-top: 22px;
}

@media screen and (max-width: 767px) {
  .pg-top .feature {
    margin-top: 85px;
    padding: 61px 0 67px;
  }
  .pg-top .feature::before {
    width: calc(100% - 13.3%);
  }
  .pg-top .feature .featureItem {
    display: block;
  }
  .pg-top .feature .featureItem__textArea {
    display: block;
    padding: 34px 23px 28px;
  }
  .pg-top .feature .featureItem__textArea::before {
    top: 42px;
    width: 12px;
  }
  .pg-top .feature .featureItem__textArea .title {
    font-size: 1.4rem;
  }
  .pg-top .feature .featureItem__textArea .text {
    margin-top: calc(17px - 0.5em);
  }
  .pg-top .feature .featureItem__textArea .c-readMore {
    margin-top: 3px;
  }
}

.pg-top .news {
  margin-top: 140px;
}

.pg-top .news .c-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.pg-top .news__leftArea {
  width: calc((287 / 1224) * 100%);
}

.pg-top .news__leftArea .c-readMore {
  margin-top: 46px;
  width: 136px;
}

.pg-top .news__rightArea {
  width: calc((937 / 1224) * 100%);
}

@media screen and (max-width: 767px) {
  .pg-top .news {
    margin-top: 68px;
  }
  .pg-top .news .c-container {
    display: block;
  }
  .pg-top .news__leftArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
  }
  .pg-top .news__leftArea .c-readMore {
    margin-top: 0;
    margin-bottom: 5px;
    width: 115px;
  }
  .pg-top .news__rightArea {
    margin-top: 60px;
    width: 100%;
  }
}

/**
 * pg_textHeading
 */
.pg-textHeading .l-header header .navArea .gNavList li a[target="_blank"] .text::after {
  background-image: url(../images/common/icon_newWin02.png);
}

.pg-textHeading .p-breadcrumb {
  border-bottom: 1px solid #ececec;
}

.pg-textHeading main {
  padding-top: 90px;
}

@media screen and (max-width: 767px) {
  .pg-textHeading main {
    padding-top: 43px;
  }
}

/**
 * pg_imageHeading
 */
@media screen and (min-width: 768px) {
  .pg-imageHeading .l-header header .navArea .gNavList > li > a {
    color: rgb(0, 0, 0);
  }
}

.pg-imageHeading .l-header header .gMenuBtn {
  color: #0989d2;
}

.pg-imageHeading .l-contents {
  padding-top: 0;
}

.pg-imageHeading main {
  padding-top: 140px;
}

@media screen and (max-width: 767px) {
  .pg-imageHeading main {
    padding-top: 60px;
  }
}

/**
 * pg-newsArchive
 */
.pg-newsArchive .pickup {
  position: relative;
  margin-top: 180px;
  padding-bottom: 82px;
}

.pg-newsArchive .pickup::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 105px;
  left: 0;
  width: 100%;
  height: calc(100% - 65px);
  background-color: #f1f3f6;
}

.pg-newsArchive .pickup__heading {
  margin: 0 0 calc(52px + 29px) -35px;
  text-align: center;
  font-size: 3.4rem;
  font-weight: normal;
  line-height: 1.12;
  letter-spacing: 0.1em;
}

.pg-newsArchive .pickup__heading .ja {
  display: block;
  margin: -80px 0 0 43px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 2.38;
  letter-spacing: 0.05em;
}

.pg-newsArchive .pickupArticle__title {
  margin-bottom: 37px;
  text-align: center;
  color: #0989d2;
  font-size: 3.6rem;
  line-height: 1.42;
  letter-spacing: 0.04em;
}

.pg-newsArchive .pickupArticle img {
  width: 650px;
  height: auto;
}

@media screen and (max-width: 767px) {
  .pg-newsArchive .pickup {
    margin-top: 100px;
    padding-bottom: 90px;
  }
  .pg-newsArchive .pickup::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 65px;
    left: 0;
    width: 100%;
    height: calc(100% - 65px);
    background-color: #f1f3f6;
  }
  .pg-newsArchive .pickup__heading {
    margin: 0 0 calc(10px + 29px) -30px;
    text-align: center;
  }
  .pg-newsArchive .pickup__heading .ja {
    display: block;
    margin: -41px 0 0 38px;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 2.38;
    letter-spacing: 0.05em;
  }
  .pg-newsArchive .pickupArticle__title {
    margin-bottom: 37px;
    text-align: left;
    color: #0989d2;
    font-size: 2.5rem;
    line-height: 1.42;
    letter-spacing: 0.04em;
  }
}

@media screen and (max-width: 767px) {
  .pg-newsArchive .p-backArea {
    padding-top: 64px;
  }
}

/**
 * pg-newsDetailArchive
 */
.pg-newsDetailArchive .p-textHeading {
  background-color: #fff;
  padding: 70px 0 42px;
}

.pg-newsDetailArchive .p-textHeading .ja {
  display: block;
  margin-top: 15px;
  font-size: 3rem;
  line-height: 1.5;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .pg-newsDetailArchive .p-textHeading {
    border-bottom: 0;
    padding: 45px 0 11px;
  }
  .pg-newsDetailArchive .p-textHeading .ja {
    margin-top: 10px;
    font-size: 2rem;
    line-height: 1.15;
  }
}

.pg-newsDetailArchive .p-breadcrumb {
  padding: 4px 0 34px;
}

@media screen and (max-width: 767px) {
  .pg-newsDetailArchive .p-breadcrumb {
    display: block;
    padding: 4px 0 20px;
  }
}

.pg-newsDetailArchive .pickupDetail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}

.pg-newsDetailArchive .pickupDetail .c-newsList__meta .c-newsList__cat {
  margin-left: 18px;
}

@media screen and (max-width: 767px) {
  .pg-newsDetailArchive .pickupDetail .c-newsList__meta .c-newsList__cat {
    margin-left: 13px;
  }
  .pg-newsDetailArchive .pickupDetail ol {
    display: none;
  }
}

.pg-newsDetailArchive main {
  padding-top: 0px;
}

.pg-newsDetailArchive main .p-backArea {
  padding: 100px 0 0;
}

@media screen and (max-width: 767px) {
  .pg-newsDetailArchive main {
    padding-top: 10px;
  }
  .pg-newsDetailArchive main .c-general {
    margin-top: calc(44px - 0.5em);
  }
  .pg-newsDetailArchive main .p-backArea {
    padding: 60px 0 0;
  }
}

.pg-newsDetailArchive .l-footer {
  margin-top: 105px;
}

.pg-newsDetailArchive .is-richtext img {
  width:100%;
  height:auto;
}

@media screen and (max-width: 767px) {
  .pg-newsDetailArchive .l-footer {
    margin-top: 70px;
  }
}

/**
 * pg-contact
 */
.pg-contact .p-breadcrumb {
  padding: 0 0 10px;
}

.pg-contact main {
  padding-top: 0;
}

.pg-contact .contactButtonArea {
  padding-top: 0;
}

.pg-contact .contactButtonArea .c-general .c-borderHeading {
  margin-top: 97px;
  margin-bottom: calc(60px - 0.06em);
}

.pg-contact .contactButtonArea .c-general p {
  line-height: 1.8;
}

.pg-contact .contactButtonArea .c-general .c-shadowBox + .c-borderHeading {
  margin-top: 84px;
}

.pg-contact .contactButtonArea .c-linkButton a[target="_blank"]::after {
  background-image: url(../images/common/icon_newWin04.png);
}

@media screen and (max-width: 767px) {
  .pg-contact .contactButtonArea .c-general .c-borderHeading {
    font-size: 1.9rem;
    margin: calc(58px - 0.45em) 0 calc(36px - 0.45em);
  }
  .pg-contact .contactButtonArea .c-general p {
    line-height: 1.8;
  }
}

@media screen and (max-width: 767px) {
  .pg-contact .p-backArea {
    padding: 33px 0 0;
  }
}

.pg-contact .l-footer {
  margin-top: 75px;
}


/**
 * pg-link
 */

 .pg-link .welink {
   margin-bottom: 100px;
   display: inline-block;
   width: 100%;
}
 .pg-link .welink li {
   float: left;
   padding: 10px;
   width: 33%;
 }
 .pg-link .welink li img {
   width: 100%;
 }
 .pg-link .welink a {
  font-size: 1.2rem;
  color: #0050a3;
  text-decoration: none;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
 }

 @media screen and (max-width: 767px) {
  .pg-link .welink {
    margin-bottom: 100px;
    display: inline-block;
 }
  .pg-link .welink li {
    float:none;
    padding: 10px;
    width: 100%;
  }
  .pg-link .welink li img {
    width: 100%;
  }
  
 }


/**
 * pg-privacy
 */
.pg-privacy .p-textHeading .en {
  font-size: 2rem;
}

.pg-privacy .p-textHeading .ja {
  line-height: 1.5;
  margin-top: 15px;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .pg-privacy .p-textHeading {
    padding: 45px 0 53px;
  }
  .pg-privacy .p-textHeading .en {
    font-size: 1.3rem;
  }
  .pg-privacy .p-textHeading .ja {
    line-height: 1.33;
    margin-top: 3px;
    letter-spacing: 0.05em;
  }
}

.pg-privacy .p-breadcrumb {
  padding: 8px 0 37px;
}

.pg-privacy .c-general {
  margin-top: 0;
}

.pg-privacy .c-general .c-borderHeading {
  margin-top: calc(5px - 0.18em);
}

.pg-privacy .c-general .c-borderHeading + p {
  margin-top: calc(52px - 0.18em);
}

@media screen and (max-width: 767px) {
  .pg-privacy .c-general .c-borderHeading {
    margin-bottom: calc(44px - 0.18em);
    border-bottom: 1px solid #8c8c8c;
    padding: 0 0 calc(19px - 0.18em) 0;
    text-align: center;
    font-size: 2.5rem;
    font-weight: normal;
  }
  .pg-privacy .c-general .c-borderHeading::before, .pg-privacy .c-general .c-borderHeading::after {
    content: none;
  }
  .pg-privacy .c-general .c-borderHeading + p {
    margin-top: calc(38px - 0.18em);
    letter-spacing: 0.08em;
  }
}

.pg-privacy .c-general .c-boldHeading {
  margin: calc(65px - 0.45em) 0 calc(33px - 0.45em);
  font-size: 2.2rem;
  line-height: 1.73;
  letter-spacing: 0.1em;
}

.pg-privacy .c-general .c-boldHeading + p {
  margin-top: calc(0px - 0.18em);
}

.pg-privacy .c-general .c-boldHeading + p + .c-boldHeading {
  margin: calc(42px - 0.45em) 0 calc(33px - 0.45em);
}

@media screen and (max-width: 767px) {
  .pg-privacy .c-general .c-boldHeading {
    margin: calc(39px - 0.45em) 0 calc(22px - 0.45em);
    font-size: 1.6rem;
  }
  .pg-privacy .c-general .c-boldHeading + p {
    margin-top: calc(0px - 0.18em);
    line-height: 1.91;
  }
  .pg-privacy .c-general .c-boldHeading + p + .c-boldHeading {
    margin: calc(40px - 0.45em) 0 calc(22px - 0.45em);
  }
}

.pg-privacy .c-general p:not(class) + p:not(class) {
  margin-top: 1.3em;
}

@media screen and (max-width: 767px) {
  .pg-privacy .c-general p:not(class) + p:not(class) {
    margin-top: 2em;
  }
}

.pg-privacy .c-general .policy-list {
  margin-top: calc(24px - 0.18em);
}
.pg-security .c-general .policy-list {
  padding-left: 2.5em;
  text-indent: -2.7em;
}
.pg-security main {
  padding-top: 0px;
}
.security-logo {
  text-align: right;
}
.security-logo img {
  width: 30%;
}

.pg-privacy .c-general .policy-list + p {
  margin-top: calc(25px - 0.18em);
}

.pg-privacy .c-general .policy-list + p + .c-boldHeading {
  margin: calc(44px - 0.45em) 0 calc(33px - 0.45em);
}

@media screen and (max-width: 767px) {
  .pg-privacy .c-general .policy-list {
    margin-top: calc(11px - 0.18em);
  }
  .pg-privacy .c-general .policy-list + p {
    margin-top: calc(15px - 0.18em);
  }
  .pg-privacy .c-general .policy-list + p + .c-boldHeading {
    margin: calc(44px - 0.45em) 0 calc(22px - 0.45em);
  }
}

.pg-privacy .c-general .policy-contact {
  margin-top: calc(24px - 0.18em);
}

@media screen and (max-width: 767px) {
  .pg-privacy .c-general .policy-contact {
    margin-top: calc(26px - 0.18em);
  }
}

.pg-privacy .c-general .c-linkButton {
  margin-top: 43px;
  width: 432px;
}

.pg-privacy .c-general .c-linkButton a {
  padding: calc(34px - 0.6875em) 57px calc(34px - 0.6875em) 34px;
  letter-spacing: 0.05em;
}

.pg-privacy .c-general .c-linkButton a .arrow {
  right: 27px;
}

[data-whatintent="mouse"] .pg-privacy .c-general .c-linkButton a:hover {
  color: #fff;
}

[data-whatintent="mouse"] .pg-privacy .c-general .c-linkButton a:hover::before {
  opacity: 1;
}

[data-whatintent="mouse"] .pg-privacy .c-general .c-linkButton a:hover .arrow {
  color: #fff;
}

@media screen and (max-width: 767px) {
  .pg-privacy .c-general .c-linkButton {
    margin-top: 54px;
    width: 275px;
  }
  .pg-privacy .c-general .c-linkButton a {
    padding: calc(13px - 0.175em) 49px calc(13px - 0.175em) 29px;
    font-size: 1.4rem;
    line-height: 1.35;
  }
  .pg-privacy .c-general .c-linkButton a .arrow {
    right: 23px;
  }
}

.pg-privacy .p-backArea {
  padding: 122px 0 0;
}

@media screen and (max-width: 767px) {
  .pg-privacy .p-backArea {
    padding: 57px 0 0;
  }
}

.pg-privacy .l-footer {
  margin-top: 105px;
}

@media screen and (max-width: 767px) {
  .pg-privacy .l-footer {
    margin-top: 76px;
  }
}

/**
 * pg-form
 */
.pg-form .p-imageHeading {
  width: 100%;
  background: url(../images/contact/contact_mv_img01.jpg) center/cover no-repeat;
}

.pg-form.pg-imageHeading main {
  padding-top: 42px;
}

.pg-form .thanks {
  width: 86.57%;
  margin: 116px auto 0;
}

.pg-form .thanks .en {
  display: inline-block;
  font-size: 3.4rem;
  line-height: 1.27;
  color: #004fa3;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-transform: uppercase;
}

@media all and (-ms-high-contrast: none) {
  .pg-form .thanks .en {
    background: none;
  }
}

.pg-form .thanks .ja {
  display: block;
  margin-top: calc(26px - 0.35em);
  font-size: 3rem;
  line-height: 1.7;
  font-weight: bold;
  letter-spacing: 0.23em;
}

.pg-form .thanks__body {
  width: 86.57%;
  margin: calc(42px - 0.4em) auto 0;
}

.pg-form .thanks__body .c-general {
  margin-top: 0;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .pg-form .p-imageHeading {
    width: 100%;
    background: url(../images/contact/SP-contact_mv.jpg) center/cover no-repeat;
  }
  .pg-form.pg-imageHeading main {
    padding-top: 61px;
  }
  .pg-form .thanks {
    width: 100%;
    margin: 69px auto 0;
  }
  .pg-form .thanks .en {
    font-size: 2rem;
    line-height: 1.25;
  }
  .pg-form .thanks .ja {
    margin-top: calc(12px - 0.35em);
    font-size: 1.8rem;
    line-height: 1.69;
  }
  .pg-form .thanks__body {
    width: 100%;
    margin: calc(48px - 0.4em) auto 0;
  }
  .pg-form .thanks__body .c-general {
    margin-top: 0;
    line-height: 1.81;
  }
  .pg-form .p-backArea {
    padding: 33px 0 0;
  }
}

/**
 * pg-business
 */
/* common */
.pg-fc .p-imageHeading {
  background-image: url(../images/business/business_fc_mv_bg01.jpg)!important;
}
.pg-fc .dental {
  margin-top: 50px;
  padding: 40px;
  background-color:#ffffff;
  height: 410px;
}
.pg-fc .dental div {
  margin-top: 20px;
  display: block;
  float: left;
  width: 445px;
  font-size: 1.0rem;
}
.pg-fc .dental div.attention {
  margin-top: 20px;
  display: block;
  clear: both;
  width: 100%;
  font-size: 0.9rem;
}
.pg-fc .table-wrap {
  overflow-x:auto;
}
.pg-fc table {
  width: 100%;
  white-space: nowrap;
}
.pg-fc .fcTable th {
  color: #ffffff;
  background-color: rgb(28, 117, 158);
  font-weight: 500;
  text-align: center;
  border: solid 1px #ffffff;
  padding: 5px;
  vertical-align:middle;
}
.pg-fc .fcTable td {
  text-align: left;
  border: solid 1px #9f9f9f;
  padding: 0px;
  width: 43%;
  vertical-align: middle;
}
.pg-fc .fcTable .TableNone {
  background-color: rgb(231, 231, 231)!important;
}
.pg-fc .fcTable .TableBrand {
  height: 100px;
}

.pg-fc table .tableTitle {
  background-color: rgb(9, 80, 112);
}

.pg-business .c-video .c-videoWrapper {
  text-align: center;
}

.pg-business .c-video .c-videoWrapper iframe {
  position: absolute;
  text-align: center;
  top: 0;
  left: 0;
  width: 80%;
  height: 80%;
}

@media screen and (max-width: 767px) {
  .pg-fc .p-imageHeading {
    background-image: url(../images/business/SP-business_fc_mv_bg01.jpg)!important;
  }
  .pg-fc .dental {
    margin-top: 50px;
    padding: 20px;
    background-color:#ffffff;
    height: auto;;
  }
  .pg-fc .dental div {
    margin-top: 20px;
    font-size: 1.0rem;
    width: auto;
    float: unset;
  }
  
}

.pg-fc .p-imageHeading .ja {
  font-weight: 500;
}

.pg-business .p-imageHeading {
  background-image: url(../images/business/business_detail_mv_bg01.jpg);
}
.pg-oralcare .p-imageHeading {
  background: linear-gradient(92deg, #004fa3, #f1f3f600),url(../images/business/business_detail_mv_bg02.jpg)!important;
  background-size:cover!important;
}

@media screen and (max-width: 767px) {
  .pg-business .p-imageHeading {
    background-image: url(../images/business/SP-business_detail_mv_bg01.jpg);
  }
  .pg-oralcare .p-imageHeading {
    padding-top: 20px;
    background: linear-gradient(92deg, #004fa3, #f1f3f600),url(../images/business/SP-business_detail_mv_bg02.jpg)!important;
    background-size:cover!important;
  }
}

.pg-business main {
  padding-top: 0;
}
.pg-business .mt30 {
  margin-top: 30px;
}

.pg-business .c-leftBorderHeading {
  margin-top: 109px;
  line-height: 140%;
}

@media screen and (max-width: 767px) {
  .pg-business .c-leftBorderHeading {
    margin-top: 55px;
    line-height: 140%;
  }
}

@media screen and (min-width: 768px) {
  .pg-business .p-backArea {
    padding-top: 80px;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .p-backArea {
    padding-top: 60px;
  }
}

.pg-business .bgwhite {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 10px;
}

@media screen and (min-width: 768px) {
  .pg-business .l-footer {
    margin-top: 106px;
  }
}

/* index */
.pg-business .business .c-mainvisual .c-mainvisual__copy {
  color: #000;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .pg-business .business .c-mainvisual {
    margin-bottom: 138px;
  }
  .pg-business .business .c-mainvisual .c-mainvisual__image {
    background-image: url(../images/business/business_mv_img01.jpg);
  }
  .pg-business .business .c-mainvisual .c-mainvisual__copy img {
    width: 452px;
    top: -200px;
    left: -10px;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business .c-mainvisual {
    margin-bottom: 60px;
  }
  .pg-business .business .c-mainvisual .c-mainvisual__image {
    background-image: url(../images/business/business_mv_img01.jpg);
    opacity: 0.6;
  }
  .pg-business .business .c-mainvisual .c-mainvisual__copy {
    top: auto;
    bottom: 11%;
  }
  .pg-business .business .c-mainvisual .c-mainvisual__copy img {
    width: 227px;
    top: -80.5px;
  }
}

@media screen and (max-width: 320px) {
  .pg-business .business .c-mainvisual .c-mainvisual__copy img {
    width: 150px;
    top: -36.5px;
  }
}

.pg-business .business .p-backArea {
  padding-top: 150px;
}

@media screen and (max-width: 767px) {
  .pg-business .business .p-backArea {
    padding-top: 71px;
  }
}

/* fc */
.annotation {
  font-size: 1.2rem;
}

.pg-business .business-fc__col3 {
  padding: 76px 72px;
  background-color: #f1f3f6;
}

.pg-business .business-fc__col3 img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__col3 {
    padding: 30px 25px;
  }
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__col3__imgArea {
    margin: -32px -32px 8px;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__col3__imgArea {
    display: none;
  }
}

.pg-business .business-fc__col3__txtArea--heading {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 20px;
}

.pg-business .business-fc__col3__txtArea .col .business-fc__col3__txtArea--img {
  max-width: 210px;
  margin: 0 auto 30px;
}

.pg-business .business-fc__col3__txtArea .col:nth-child(n+2) .business-fc__col3__txtArea--img {
  margin-top: -110px;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__col3__txtArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .pg-business .business-fc__col3__txtArea .col {
    width: calc((100% - 36px*2)/3);
  }
  .pg-business .business-fc__col3__txtArea .col .business-fc__col3__txtArea--img {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__col3__txtArea--heading {
    font-size: 1.3rem;
    margin-bottom: 10px;
  }
  .pg-business .business-fc__col3__txtArea .col {
    padding: 30px 30px 60px;
    background-color: #fff;
  }
  .pg-business .business-fc__col3__txtArea .col:nth-child(n+2) {
    margin-top: 35px;
  }
  .pg-business .business-fc__col3__txtArea .col:nth-child(2) .business-fc__col3__txtArea--img {
    text-align: center;
  }
  .pg-business .business-fc__col3__txtArea .col:nth-child(2) .business-fc__col3__txtArea--img img {
    width: 60.95%;
  }
  .pg-business .business-fc__col3__txtArea .col:last-child {
    padding-bottom: 40px;
  }
}

.pg-business .business-fc__point {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__point:after {
    content: "";
    display: block;
    background-color: white;
    -webkit-box-shadow: 0px 0px 43px 0px rgba(154, 174, 205, 0.36);
    box-shadow: 0px 0px 43px 0px rgba(154, 174, 205, 0.36);
    width: 791px;
    height: 243px;
    position: absolute;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
    z-index: -1;
  }
}

.pg-business .business-fc__point__box {
  background-color: #f7f7f7;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__point__box {
    max-width: 490px;
    margin-right: 45px;
  }
  .pg-business .business-fc__point__box:nth-child(2), .pg-business .business-fc__point__box:nth-child(4) {
    margin-right: 0;
  }
  .pg-business .business-fc__point__box:nth-child(n+3) {
    margin-top: 34px;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__point__box:nth-child(n+2) {
    margin-top: 10px;
  }
}

.pg-business .business-fc__point__box--heading {
  background-color: #005bad;
  font-size: 1.8rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  padding: 10px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__point__box--heading {
    font-size: 1.6rem;
    padding: 5px;
  }
}

.pg-business .business-fc__point__box--list {
  font-size: 1.4rem;
  font-weight: 500;
  padding: 5px 33px;
}
.pg-business .business-fc__point__box--list ol {
  font-size: 1.4rem;
  font-weight:bolder;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__point__box--list {
    font-size: 1.3rem;
    padding: 10px 18px;
  }
}

.pg-business .business-fc__point__box--list li:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 19px;
  height: 14px;
  background: url(../images/common/icon_check01.png) 50% 50% no-repeat;
  background-size: cover;
  margin-right: 20px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__point__box--list li:before {
    width: 18px;
    height: 12px;
    margin-right: 10px;
  }
}

.pg-business .business-fc__worth {
  margin-bottom: 103px;
  padding-bottom: 93px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__worth {
    margin-bottom: 60px;
    padding: 20px 0 61px;
  }
}

.pg-business .business-fc__worth .c-centetHeading {
  margin-bottom: 63px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__worth .c-centetHeading {
    margin-bottom: 45px;
  }
}

.pg-business .business-fc__worth__anchor {
  position: relative;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__worth__anchor {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    z-index: 1;
  }
}

.pg-business .business-fc__worth__anchor:after {
  content: "";
  display: block;
  width: 100%;
  height: 53px;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

.pg-business .business-fc__worth__anchor li {
  position: relative;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__worth__anchor li {
    width: 33.333%;
  }
}

.pg-business .business-fc__worth__anchor li a {
  text-decoration: none;
  display: block;
  text-align: center;
}

.pg-business .business-fc__worth__anchor li a:after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border: solid #004ea2;
  border-width: 0 2px 2px 0;
  position: absolute;
  bottom: 27px;
  right: 50%;
  -webkit-transform: translate(50%, 0) rotate(45deg);
  transform: translate(50%, 0) rotate(45deg);
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__worth__anchor li a:after {
    bottom: auto;
    top: calc(50% + 5px);
    right: 21px;
    -webkit-transform: translate(0, 50%) rotate(45deg);
    transform: translate(0, 50%) rotate(45deg);
  }
}

.pg-business .business-fc__worth__anchor li a:hover:after {
  border-color: #fff;
}

.pg-business .business-fc__worth__anchor li a:hover .business-fc__worth__anchor--txt {
  color: #fff;
}

.pg-business .business-fc__worth__anchor li a:hover .business-fc__worth__anchor--txt:after {
  opacity: 1;
}

.pg-business .business-fc__worth__anchor--heading {
  color: #fff;
  font-family: 'Futura', sans-serif;
  font-size: 1.4rem;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__worth__anchor--heading {
    height: 53px;
    border-left: 1px solid #5D8BBA;
  }
  .pg-business .business-fc__worth__anchor--heading span {
    font-size: 2.8rem;
    margin-left: 0.5rem;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__worth__anchor--heading {
    height: 40px;
    background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
    background: linear-gradient(to right, #004fa3, #0086d1);
  }
  .pg-business .business-fc__worth__anchor--heading span {
    font-size: 2rem;
  }
}

.pg-business .business-fc__worth__anchor--txt {
  position: relative;
  margin: 0;
  font-size: 1.8rem;
  color: #000;
  line-height: 1.5;
  padding: 33px 0 66px;
  background-color: #fff;
  z-index: 0;
}

.pg-business .business-fc__worth__anchor--txt:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__worth__anchor--txt {
    border-left: 1px solid #EBEBEB;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__worth__anchor--txt {
    font-size: 1.5rem;
    padding: 20px 30px 20px 20px;
  }
}

.pg-business .business-fc__worth--heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background-color: #fff;
  margin-bottom: 61px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__worth--heading {
    margin-bottom: 32px;
  }
}

.pg-business .business-fc__worth--heading .num {
  padding: 0.5em 0 0 24px;
  background-color: #0050a4;
  color: #fff;
  font-family: 'Futura', sans-serif;
  font-size: 1.7rem;
  width: 152px;
  background: url(../images/business/business_fc_ttl01.png) 50% 50% no-repeat;
  background-size: 100% 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.pg-business .business-fc__worth--heading .num strong {
  font-size: 3.4rem;
  margin-bottom: 0.5em;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__worth--heading .num {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    font-size: 1.4rem;
    width: 82.5px;
    line-height: 1.2;
    padding: 0.5em 10px 0 0;
  }
  .pg-business .business-fc__worth--heading .num strong {
    display: block;
    font-size: 2rem;
  }
}

.pg-business .business-fc__worth--heading .txt {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding: 28px 17px;
  font-size: 2.4rem;
  line-height: 1.583;
}

.pg-business .business-fc__worth--heading .txt strong {
  color: #0050a4;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__worth--heading .txt {
    padding: 5px 10px;
    font-size: 1.6rem;
  }
}

.pg-business .business-fc__support {
  margin-bottom: 124px;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__support {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__support {
    margin-top: -10px;
    margin-bottom: 75px;
  }
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__support__col {
    width: calc((100% - 45px*2)/3);
  }
  .pg-business .business-fc__support__col:nth-child(n+4) {
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__support__col:nth-child(n+2) {
    margin-top: 35px;
  }
}

.pg-business .business-fc__support__col--heading {
  font-size: 1.8rem;
  font-weight: bold;
  padding-bottom: 10px;
  border-bottom: 2px solid rgba(0, 78, 162, 0.15);
  margin-bottom: 21px;
  min-height: 70px;
  line-height: 1.55556;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__support__col--heading {
    font-size: 1.6rem;
    min-height: inherit;
    margin-bottom: 10px;
  }
}

.pg-business .business-fc__support__col--img {
  width: 132px;
  margin: 0 auto 20px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__support__col--img {
    width: 120px;
    margin-bottom: 10px;
  }
}

.pg-business .business-fc__support__col--img img {
  width: 100%;
}

.pg-business .business-fc__application {
  padding: 80px 0 90px;
  background-color: #9baecb;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__application {
    padding: 35px 0 45px;
  }
}

.pg-business .business-fc__application--heading {
  color: #fff;
  text-align: center;
  font-size: 3.8rem;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__application--heading {
    font-size: 2.3rem;
    line-height: 1.3;
    letter-spacing: 0;
    margin-bottom: 15px;
  }
}

.pg-business .business-fc__application--lead {
  color: #fff;
  text-align: center;
  font-size: 2rem;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__application--lead {
    font-size: 1.4rem;
    line-height: 1.71429;
    margin-bottom: 25px;
  }
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__application--link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.pg-business .business-fc__application--link li {
  width: 100%;
  min-height: inherit;
}

@media screen and (min-width: 768px) {
  .pg-business .business-fc__application--link li {
    max-width: calc((100% - 5px*2)/2);
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__application--link li:nth-child(n+2) {
    margin-top: 10px;
  }
}

.pg-business .business-fc__application--link li a {
  background-color: #fff;
  padding: 27px 46px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__application--link li a {
    padding: 15px 23px;
  }
}

.pg-business .business-fc__application--link li a[target="_blank"]::after {
  background-image: url(../images/common/icon_newWin04.png);
}

.pg-business .business-fc__application--link li a[target="_blank"] .arrow::before {
  top: -4px;
  width: 11px;
  height: 11px;
  background: url(../images/common/icon_newWin01.png) no-repeat;
}

.pg-business .business-fc__application--link li a[target="_blank"] .arrow::after {
  width: 0;
  height: 0;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__application--link li a[target="_blank"] .arrow {
    right: 13px;
    width: 18.5px;
  }
}

.pg-business .business-fc__application--link li a .arrow {
  right: 26px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc__application--link li a .arrow {
    right: 13px;
    width: 18.5px;
  }
}

.pg-business .business-fc .p-backArea {
  padding-top: 55px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-fc .p-backArea {
    padding-top: 48px;
  }
}

.pg-business .business-medical .c-textAndImage__imgArea figure {
  margin-top: 10px;
}

.pg-business .business-medical .c-textAndImage__imgArea figure:first-of-type {
  margin-top: 0;
}

.pg-business .business-medical .c-textAndImage__imgArea figure img {
  width: 100%;
}

.pg-business .business-medical__general {
  margin-top: calc(88px - 0.5em);
}

@media screen and (max-width: 767px) {
  .pg-business .business-medical__general {
    margin-top: calc(50px - 0.5em);
  }
}

.pg-business .business-medical__images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 45px;
}

.pg-business .business-medical__images figure {
  margin-left: 10px;
}

.pg-business .business-medical__images figure:first-of-type {
  margin-left: 0;
}

.pg-business .business-medical__images figure img {
  width: 100%;
}

.pg-business .business-medical__research--heading {
  font-weight: 600;
  margin-bottom: 1rem;
}

.pg-business .business-medical__research .c-col2__col:first-child {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .pg-business .business-medical__research {
    padding: 40px 60px 45px;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-medical__research {
    padding-bottom: 30px;
  }
  .pg-business .business-medical__research--heading {
    margin-bottom: 0.5rem;
  }
}

.pg-business .business-medical__innovative {
  padding: 30px;
}

.pg-business .business-medical__innovative .c-shadowBox {
  margin: 0;
  padding-bottom: 70px;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(154, 174, 205, 0.1);
  box-shadow: 0px 0px 30px 0px rgba(154, 174, 205, 0.1);
}

.pg-business .business-medical__innovative--heading {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .pg-business .business-medical__innovative .c-col2 {
    margin-top: 40px;
  }
  .pg-business .business-medical__innovative .c-col2 figure {
    margin-bottom: 25px;
  }
  .pg-business .business-medical__innovative .c-col2 p {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-medical__innovative {
    padding: 12px;
  }
  .pg-business .business-medical__innovative .c-shadowBox {
    padding: 25px 25px 35px;
    -webkit-box-shadow: 0px 0px 15px 0px rgba(154, 174, 205, 0.1);
    box-shadow: 0px 0px 15px 0px rgba(154, 174, 205, 0.1);
  }
  .pg-business .business-medical__innovative .c-col2 figure {
    margin-bottom: 20px;
  }
  .pg-business .business-medical__innovative .c-col2 p {
    font-size: 1.2rem;
  }
  .pg-business .business-medical__innovative--heading {
    font-size: 1.3rem;
    margin-bottom: 5px;
  }
}

.pg-business .is-narrow + .is-narrow {
  margin-top: 10px;
}

.pg-business .business-oralcare .c-bgGray {
  padding-bottom: 130px;
}

@media screen and (max-width: 767px) {
  .pg-business .business-oralcare .c-bgGray {
    margin-top: 45px;
    padding-bottom: 64px;
  }
}

.pg-business .business-oralcare__dtoc {
  margin: -2% 0 0;
}

@media screen and (max-width: 767px) {
  .pg-business .business-oralcare__dtoc {
    margin: -1.5% -5.5% -5.5%;
  }
}

.pg-business .business-oralcare__anchor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.pg-business .business-oralcare__anchor li a {
  font-size: 1.6rem;
  color: #000;
  font-weight: bold;
  line-height: 2.375;
  text-decoration: none;
}

.pg-business .business-oralcare__anchor li a:hover {
  text-decoration: underline;
  color: #004fa3;
}

.pg-business .business-oralcare__anchor li a:after {
  content: "";
  display: inline-block;
  vertical-align: 3.5px;
  width: 7px;
  height: 7px;
  border: solid #004fa3;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-left: 16px;
}

@media screen and (min-width: 768px) {
  .pg-business .business-oralcare__anchor {
    width: 100%;
  }
  .pg-business .business-oralcare__anchor li.none {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .pg-business .business-oralcare__anchor {
    margin-top: -15px;
  }
  .pg-business .business-oralcare__anchor li.none {
    width: 100%;
  }
  .pg-business .business-oralcare__anchor li a {
    font-size: 1.3rem;
  }
  .pg-business .business-oralcare__anchor li a:after {
    vertical-align: 4px;
    width: 5px;
    height: 5px;
    border-width: 0 1px 1px 0;
    margin-left: 7px;
  }
}

/**
 * pg-initiatives
 */
/* common */
.pg-initiatives .p-imageHeading {
  background-image: url(../images/initiatives/initiatives_detail_mv_bg01.jpg);
}
.pg-sdgs .p-imageHeading {
  background: linear-gradient(92deg, rgb(0 122 70 / 39%), rgb(255 255 255 / 0%)),url(../images/initiatives/initiatives_detail_mv_bg02.jpg)!important;
  background-size:cover!important;
}
.pg-social .p-imageHeading {
  background: linear-gradient(92deg, rgb(0 122 70 / 39%), rgb(255 255 255 / 0%)),url(../images/initiatives/initiatives_detail_mv_bg04.jpg)!important;
  background-size:cover!important;
}
.pg-future .p-imageHeading {
  background: linear-gradient(92deg, rgb(22 102 95 / 41%), rgb(255 255 255 / 0%)),url(../images/initiatives/initiatives_detail_mv_bg03.jpg)!important;
  background-size:cover!important;
}
.pg-compliance .p-imageHeading {
  background-image: url(../images/initiatives/initiatives_detail_mv_bg04.jpg)!important;
}

.pg-compliance .c-general .policy-list {
  padding-left: 2.0em;
  text-indent: -1.7em;
}
.pg-compliance .mt30 {
  margin-top: 30px;
}
.pg-compliance .c-episode .text {
  font-size: 1.4rem!important;
}
.pg-compliance .c-episode--txtLeft .c-episode__body {
  padding: 40px 43% 50px 5%!important;
}
.pg-compliance .c-episode--txtRight .c-episode__body {
  padding: 56px 3% 56px 43%!important;
}
.pg-compliance .c-episode--txtLeft .c-episode__image {
  width:40% ;
}
.pg-compliance .c-episode--txtRight .c-episode__image {
  width:52% ;
  text-align: center;
}
.pg-compliance .c-episode__image img {
  width:300px;
  
}

.pg-permission .p-imageHeading {
  background-image: url(../images/initiatives/initiatives_detail_mv_bg05.jpg)!important;
}
.pg-permission .welink {
  width: 100%;
}
.pg-permission .welink li {
  width: 33%;
  padding: 30px!important;
}
.pg-permission .welink li span {
  font-size: 80%!important;
  font-weight: normal;
}
.pg-permission .welink p {
  font-weight:bold;
  font-size: 89%;;
}
.pg-permission .welink li img {
  box-shadow:0px 0px 43px -6px rgb(120 144 173 / 36%) ;
  margin-top: 20px;
  margin-bottom: 20px;
}
.pg-permission .c-leftBorderHeading {
  margin-top: 40px!important;
}




@media screen and (max-width: 767px) {
  .pg-compliance .c-episode {
    margin-top: 30px;
  }
  .pg-compliance .c-episode__image {
    position: static;
    width: 100%;
  }
  .pg-compliance .c-episode__body {
    display: block;
    width: 100%;
    min-height: 0;
  }
  .pg-compliance .c-episode--txtLeft .c-episode__image {
    width: 100%;
    text-align: center;
    margin: 40px 0px 20px 0px;
  }
  .pg-compliance .c-episode--txtRight .c-episode__image {
    width: 100%;
    text-align: center;
    margin: 40px 0px 20px 0px;
  }
  .pg-compliance .c-episode--txtLeft .c-episode__body {
    margin: 0;
    padding: 30px 5% 40px 5%!important
  }
  .pg-compliance .c-episode--txtRight .c-episode__body {
    margin: 0;
    padding: 30px 5% 40px 5%!important
  }
  .pg-permission .welink li {
    width: 100%;
  }
}

















@media screen and (max-width: 767px) {
  .pg-initiatives .p-imageHeading {
    background-image: url(../images/initiatives/SP-initiatives_detail_mv_bg01.jpg);
  }
  .pg-sdgs .p-imageHeading {
    padding-top: 10px!important;
    background: linear-gradient(92deg, rgb(0 122 70 / 39%), rgb(255 255 255 / 0%)),url(../images/initiatives/SP-initiatives_detail_mv_bg02.jpg)!important;
    background-size:cover!important;
  }
  .pg-social .p-imageHeading {
    padding-top: 10px!important;
    background: linear-gradient(92deg, rgb(0 122 70 / 39%), rgb(255 255 255 / 0%)),url(../images/initiatives/SP-initiatives_detail_mv_bg02.jpg)!important;
    background-size:cover!important;
  }
  .pg-future .p-imageHeading {
    padding-top: 0px!important;
    background: linear-gradient(92deg, rgb(22 102 95 / 41%), rgb(255 255 255 / 0%)),url(../images/initiatives/SP-initiatives_detail_mv_bg03.jpg)!important;
    background-size:cover!important;
  }
  .pg-compliance .p-imageHeading {
    padding-top: 10px!important;
    background-image: url(../images/initiatives/SP-initiatives_detail_mv_bg04.jpg)!important;
  }
  .pg-permission .p-imageHeading {
    padding-top: 10px!important;
    background-image: url(../images/initiatives/initiatives_detail_mv_bg05.jpg)!important;
  }
}

.pg-initiatives main {
  padding-top: 0;
}

.pg-initiatives .c-general figure img {
  max-width: 100%;
}

.pg-initiatives .c-leftBorderHeading {
  margin-top: 109px;
}

@media screen and (max-width: 767px) {
  .pg-initiatives .c-leftBorderHeading {
    margin-top: 55px;
  }
}

@media screen and (min-width: 768px) {
  .pg-initiatives .p-backArea {
    padding-top: 80px;
  }
}

@media screen and (max-width: 767px) {
  .pg-initiatives .p-backArea {
    padding-top: 60px;
  }
}

@media screen and (min-width: 768px) {
  .pg-initiatives .l-footer {
    margin-top: 106px;
  }
}

/* index */
.pg-initiatives .initiatives .c-mainvisual .c-mainvisual__copy {
  color: #000;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .pg-initiatives .initiatives .c-mainvisual {
    margin-bottom: 138px;
  }
  .pg-initiatives .initiatives .c-mainvisual .c-mainvisual__image {
    background-image: url(../images/initiatives/initiatives_mv_img01.jpg);
  }
  .pg-initiatives .initiatives .c-mainvisual .c-mainvisual__copy img {
    width: 541px;
    top: -200px;
    left: -10px;
  }
  .pg-initiatives .initiatives .c-mainvisual .c-mainvisual__copy .whiteText {
    margin-top: 35px;
    background: rgba(255, 255, 255, 0.8);
    padding:5px 10px;
  }
}

@media screen and (max-width: 767px) {
  .pg-initiatives .initiatives .c-mainvisual {
    margin-bottom: 60px;
  }
  .pg-initiatives .initiatives .c-mainvisual .c-mainvisual__image {
    background-image: url(../images/initiatives/SP-initiatives_mv_img01.jpg);
    opacity: 0.6;
  }
  .pg-initiatives .initiatives .c-mainvisual .c-mainvisual__copy {
    top: auto;
    bottom: 11%;
  }
  .pg-initiatives .initiatives .c-mainvisual .c-mainvisual__copy img {
    width: 280.5px;
    top: -80.5px;
  }
}

@media screen and (max-width: 320px) {
  .pg-initiatives .initiatives .c-mainvisual .c-mainvisual__copy img {
    width: 221px;
    top: -56.5px;
  }
}

.pg-initiatives .initiatives .p-backArea {
  padding-top: 150px;
}

@media screen and (max-width: 767px) {
  .pg-initiatives .initiatives .p-backArea {
    padding-top: 68.5px;
  }
}

/* sdgs */
.pg-sdgs h4 {
  font-size: 1.7rem;
  font-weight: bold;
  padding-bottom: 20px;
  color: #0050a4;
}
.pg-sdgs h4 span {
  font-size: 0.6em;
  color: #000;
}
.pg-sdgs img.sdgs01 {
  border: 1px solid rgb(150, 150, 150);
  box-shadow: 0 10px 25px 0 rgba(124, 124, 124, 0.5);
}
.pg-sdgs td {
  border: 1px #c1c1c1 solid;
  padding: 8px;
  background-color: #fff;
}
.pg-sdgs td.midashi {
  background-color: #1c759e;
  color: #fff;
}
.pg-sdgs .sdgsHyou02 td {
  text-align: center;
  vertical-align: middle;;
  padding: 10px;
}
.pg-sdgs .sdgsHiyou {
  font-size: 1.4em;
  color: #c80000;
}
.pg-sdgs .sdgsHyou03 td {
  text-align: center;
  line-height: 100%;
  vertical-align: middle;;
  padding: 10px;
}
.pg-sdgs .sdgsHyou03 td span {
  font-size: 0.6em;
  color: #000000;
}
.pg-sdgs .table-wrap {
  overflow-x: auto;
}
.pg-sdgs .socialTxt {
  margin-top: 25px;
}
.pg-sdgs .mb30 {
  margin-bottom: 30px!important;
}
@media screen and (max-width: 767px) {
  .pg-sdgs .sdgsHyou02 {
    width: 100%!important;
  }
  .pg-sdgs .sdgsHyou03 {
    width: 100%!important;
  }
}


/* social */
.pg-initiatives .initiatives-social__list {
  position: relative;
}

.pg-initiatives .initiatives-social__list:nth-child(n+2) {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .pg-initiatives .initiatives-social__list:nth-child(n+2) {
    margin-top: 40px;
  }
}

.pg-initiatives .initiatives-social__list__imgArea img {
  width: 100%;
}

.pg-initiatives .initiatives-social__list__mainArea {
  position: relative;
  line-height: 1.8;
  background-color: #fff;
}

.initiatives-social .mb50 {
  margin-bottom: 50px;
}

@media screen and (min-width: 768px) {
  .pg-initiatives .initiatives-social__list__mainArea {
    max-width: 794px;
    margin-top: -106px;
    padding: 70px;
  }
}

@media screen and (max-width: 767px) {
  .pg-initiatives .initiatives-social__list__mainArea {
    margin-top: calc(30px - 0.5em);
  }
}

@media screen and (max-width: 767px) {
  .pg-initiatives .initiatives-social__list__mainArea .c-leftBorderHeading02 {
    margin-bottom: 20px;
  }
}

@media screen and (min-width: 768px) {
  .pg-initiatives .initiatives-social__list.is-txtRight .c-general {
    margin-left: auto;
  }
}

.pg-initiatives .initiatives-social .c-bgGray {
  margin-top: 58px;
  padding-bottom: 39px;
}

@media screen and (max-width: 767px) {
  .pg-initiatives .initiatives-social .c-bgGray {
    padding-bottom: 60px;
  }
}

.pg-initiatives .initiatives-social .c-bgGray .initiatives-social__list__mainArea {
  background-color: #f1f3f6;
}

.pg-initiatives .initiatives-social .p-backArea {
  padding-top: 20px;
}

@media screen and (max-width: 767px) {
  .pg-initiatives .initiatives-social .p-backArea {
    padding-top: 55px;
  }
}

.pg-initiatives .initiatives-social .pg-social-compliance {
  padding-top: 80px;
}
.pg-social .socialTxt {
  margin-top: 50px;
}
.pg-social .mb30 {
  margin-bottom: 30px!important;
}

.pg-future h3 {
  font-size: 1.7rem;
  font-weight: bold;
  padding-bottom: 20px;
  color: #0050a4;
}

/**
 * pg-company
 */
@media screen and (min-width: 768px) {
  .pg-company .p-textHeading .ja {
    font-size: 5rem;
  }
}

.pg-company main {
  padding-top: 0;
}

.pg-company .c-mainvisual .c-mainvisual__copy {
  color: #fff;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .pg-company .c-mainvisual {
    margin-bottom: 138px;
  }
  .pg-company .c-mainvisual .c-mainvisual__image {
    background-image: url(../images/company/company_mv_bg01.jpg);
  }
  .pg-company .c-mainvisual .c-mainvisual__copy img {
    top: -200px;
    width: 442px;
    height: auto;
  }
  .pg-company .c-mainvisual .c-mainvisual__copy .whiteText {
    margin-top: 35px;
    background: rgba(0,0,0,0.7);
    padding:5px 10px;
  }
}

@media screen and (max-width: 767px) {
  .pg-company .c-mainvisual {
    margin-bottom: 60px;
  }
  .pg-company .c-mainvisual .c-mainvisual__image {
    background-image: url(../images/company/SP-business_img01.jpg);
  }
  .pg-company .c-mainvisual .c-mainvisual__copy {
    top: auto;
    bottom: 11%;
  }
  .pg-company .c-mainvisual .c-mainvisual__copy img {
    width: 221px;
    height: auto;
    top: -50px;
  }
}

@media screen and (max-width: 320px) {
  .pg-company .c-mainvisual .c-mainvisual__copy img {
    top: -12px;
  }
}

.pg-company .c-businessList__mainArea .c-shadowBox {
  position: relative;
}

.pg-company .c-businessList__mainArea .u-tar {
  margin-top: 23px;
}

.pg-company .c-businessList .script {
  position: absolute;
  z-index: 1;
}

.pg-company .c-businessList.vision .script {
  top: calc(100% - 85px);
  left: -36px;
}

.pg-company .c-businessList.message .script {
  top: calc(100% - 98px);
  left: 2px;
}

@media screen and (max-width: 767px) {
  .pg-company .c-businessList__mainArea .u-tar {
    margin-top: 0;
  }
}

.pg-company .indexArea {
  margin-top: 186px;
  padding: 120px 0 124px;
  background-color: #f1f3f6;
}

@media screen and (max-width: 767px) {
  .pg-company .indexArea {
    margin-top: 60px;
    padding: 60px 0 57px;
  }
}

@media screen and (max-width: 767px) {
  .pg-company .p-backArea {
    padding-top: 64px;
  }
}

/**
 * pg-philosophy
 */
.pg-philosophy .p-imageHeading {
  background-image: url(../images/company/company_mv_bg01.jpg);
}

.pg-philosophy .p-imageHeading .ja {
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .pg-philosophy .p-imageHeading {
    background-image: url(../images/company/SP-business_img01.jpg);
  }
}

.pg-philosophy main {
  padding-top: 22px;
}

@media screen and (max-width: 767px) {
  .pg-philosophy main {
    padding-top: 60px;
  }
}

.pg-philosophy .leadMessage__copy {
  text-align: center;
}

.pg-philosophy .leadMessage__copy .script {
  margin-left: -76px;
}

.pg-philosophy .leadMessage__copy .logo {
  margin-top: 0px;
}

.pg-philosophy .leadMessage__copy .copy {
  display: inline-block;
  position: relative;
  margin-top: 60px;
  padding: 0 calc(0.9em - 0.5em) 0 0.9em;
  font-size: 4.6rem;
  line-height: 1.17;
  letter-spacing: 0.3em;
  font-weight: bold;
}

.pg-philosophy .leadMessage__copy .copy::before, .pg-philosophy .leadMessage__copy .copy::after {
  content: '';
  position: absolute;
  top: 0;
  width: 12px;
  height: 60px;
}

.pg-philosophy .leadMessage__copy .copy::before {
  left: 0;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
}

.pg-philosophy .leadMessage__copy .copy::after {
  right: 0;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}

@media screen and (max-width: 767px) {
  .pg-philosophy .leadMessage__copy .copy::before, .pg-philosophy .leadMessage__copy .copy::after {
    content: '';
    position: absolute;
    top: 0;
    width: 7px;
    height: 36px;
  }
}

.pg-philosophy .leadMessage__copy .lead {
  margin-top: calc(70px - 0.64em);
  font-size: 1.8rem;
  line-height: 2.6;
  font-weight: bold;
  letter-spacing: 0.21em;
}

.pg-philosophy .leadMessage__body {
  margin-top: calc(80px - 0.635em);
  font-size: 1.5rem;
  line-height: 2.27;
}

.pg-philosophy .leadMessage__body p + p {
  margin-top: 1.635em;
}

.pg-philosophy .leadMessage__image {
  margin-top: 145px;
  width: 100%;
  padding-top: 430px;
  background: url(../images/company/philosophy/philosophy_img01.jpg) center/1080px no-repeat;
}

@media screen and (max-width: 767px) {
  .pg-philosophy .leadMessage__copy .script {
    position: relative;
    left: -5px;
    margin: 0 auto;
    width: 88.46%;
  }
  .pg-philosophy .leadMessage__copy .script img {
    width: 100%;
    height: auto;
  }
  .pg-philosophy .leadMessage__copy .logo {
    margin-top: -40px;
  }
  .pg-philosophy .leadMessage__copy .logo img {
    width: auto;
    height: 90px;
  }
  .pg-philosophy .leadMessage__copy .copy {
    margin-top: 56px;
    font-size: 2.75rem;
  }
  .pg-philosophy .leadMessage__copy .lead {
    margin-top: calc(28px - 0.42em);
    font-size: 1.4rem;
    line-height: 1.84;
  }
  .pg-philosophy .leadMessage__body {
    margin-top: calc(40px - 0.4em);
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .pg-philosophy .leadMessage__body p + p {
    margin-top: 1.95em;
  }
  .pg-philosophy .leadMessage__image {
    margin-top: 42px;
    padding-top: 215px;
    background: url(../images/company/philosophy/philosophy_img01.jpg) 0/auto 100%;
  }
}
.pg-philosophy h2 {
  color: #004fa3;
}

.pg-philosophy .mission {
  padding: 90px 0 103px;
  text-align: center;
}

.pg-philosophy .mission .copy {
  display: inline-block;
  padding: 0 calc(0.9em - 0.2em) 0 0.9em;
  position: relative;
  font-size: 2.6rem;
  line-height: 1.66;
  letter-spacing: 0.1em;
  font-weight: bold;
}

.pg-philosophy .mission .copy::before, .pg-philosophy .mission .copy::after {
  content: '';
  position: absolute;
  top: 0;
  width: 12px;
  height: 60px;
}

.pg-philosophy .mission .copy::before {
  left: 0;
  /* border-top: 1px solid #000; */
  /* border-left: 1px solid #000; */
}

.pg-philosophy .mission .copy::after {
  right: 0;
  /* border-bottom: 1px solid #000; */
  /* border-right: 1px solid #000; */
}

@media screen and (max-width: 767px) {
  .pg-philosophy .mission .copy::before, .pg-philosophy .mission .copy::after {
    content: '';
    position: absolute;
    top: 0;
    width: 7px;
    height: 36px;
  }
}

.pg-philosophy .mission .copy::before, .pg-philosophy .mission .copy::after {
  top: -0.3em;
}

.pg-philosophy .mission .lead {
  margin-top: calc(59px - 0.365em);
  font-size: 1.6rem;
  line-height: 2.3;
  letter-spacing: 0.1em;
  font-weight: 500;
}

.pg-philosophy .mission__copy {
  margin-top: calc(50px - 0.545em);
  font-size: 1.6rem;
  line-height: 2.09;
  letter-spacing: 0.3em;
  font-weight: bold;
}

.pg-philosophy .mission__copy .text {
  display: inline-block;
  color: #004fa3;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 20px;;
}

@media all and (-ms-high-contrast: none) {
  .pg-philosophy .mission__copy .text {
    background: none;
  }
}

.pg-philosophy .mission__image {
  margin-top: 56px;
  width: 100%;
  background-color: #fff;
  text-align: center;
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

@media screen and (max-width: 767px) {
  .pg-philosophy .mission {
    padding: 56px 0 56px;
  }
  .pg-philosophy .mission .copy {
    font-size: 1.8rem;
  }
  .pg-philosophy .mission .copy::before {
    top: -0.3em;
  }
  .pg-philosophy .mission .copy::after {
    top: auto;
    bottom: -0.3em;
  }
  .pg-philosophy .mission .lead {
    margin-top: calc(30px - 0.175em);
    font-size: 1.35rem;
    line-height: 1.7;
    text-align: left;
  }
  .pg-philosophy .mission__copy {
    margin-top: calc(30px - 0.525em);
    font-size: 1.6rem;
    line-height: 2.05;
  }
  .pg-philosophy .mission__copy .text {
    padding-bottom: calc(9px - 0.52em);
  }
  .pg-philosophy .mission__image {
    margin-top: 48px;
    padding: 28px 25px;
  }
  .pg-philosophy .mission__image img {
    width: 100%;
    height: auto;
  }
}

.pg-initiatives .load {
  padding-top: 140px;
}

.pg-initiatives .load__list {
  padding: 57px 72px;
  background-color: #d3dce9;
  font-size: 2.2rem;
  counter-reset: order;
}

.pg-initiatives .load__list > li {
  position: relative;
  padding: calc(30px - 0.365em) 30px calc(36px - 0.365em) 95px;
  text-align: center;
  line-height: 1.73;
  font-weight: bold;
  background-color: #fff;
  counter-increment: order;
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

.pg-initiatives.load__list > li + li {
  margin-top: 20px;
}

.pg-initiatives .load__list > li::before {
  content: counter(order);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 65px;
  height: 100%;
  color: #fff;
  font-family: 'Futura', sans-serif;
  font-weight: bold;
  background-color: #004fa3;
}

.pg-initiatives .load__topics {
  margin-top: 108px;
}

.pg-initiatives .load__topics .c-column--2col {
  margin-top: -3.84%;
}

.pg-initiatives .load__topics .c-column--2col .c-column__item {
  padding-top: 3.84%;
}

.pg-initiatives .load__image {
  width: 91.11%;
  margin: 60px auto 100px;
  text-align: center;
}

.pg-initiatives .load__image img {
  max-width: 100%;
  height: auto;
}

.pg-initiatives .load .topicsItem__head {
  border-bottom: 2px solid #d9e5f1;
  padding-bottom: calc(22px - 0.335em);
  font-size: 1.8rem;
  line-height: 1.67;
  font-weight: bold;
}

.pg-initiatives .load .topicsItem__body {
  margin-top: calc(40px - 0.5em);
  font-size: 1.5rem;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .pg-initiatives .load {
    padding-top: 55px;
  }
  .pg-initiatives .load__list {
    padding: 30px 25px;
    font-size: 1.4rem;
  }
  .pg-initiatives .load__list > li {
    padding: calc(10px - 0.18em) 15px calc(12px - 0.18em) calc(15px + 18px);
    line-height: 1.36;
  }
  .pg-initiatives .load__list > li + li {
    margin-top: 15px;
  }
  .pg-initiatives .load__list > li::before {
    width: 18px;
  }
  .pg-initiatives .load__topics {
    margin-top: 45px;
  }
  .pg-initiatives .load__topics .c-column--2col {
    margin-top: 0;
  }
  .pg-initiatives .load__topics .c-column--2col .c-column__item {
    padding-top: 0;
  }
  .pg-initiatives .load__topics .c-column--2col .c-column__item + .c-column__item {
    margin-top: 30px;
  }
  .pg-initiatives .load__image {
    overflow: hidden;
    margin: 30px -7.69% 50px;
    width: calc(100% + (7.69% * 2));
    height: 59.54vw;
    height: 52vw;
    text-align: center;
    vertical-align: bottom;
  }
  .pg-initiatives .load__image img {
    width: 100%;
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scale(1.31);
    transform: scale(1.31);
  }
  .pg-initiatives .load .topicsItem__head {
    padding-bottom: calc(16px - 0.335em);
    font-size: 1.6rem;
  }
  .pg-initiatives .load .topicsItem__body {
    margin-top: calc(21px - 0.4em);
    font-size: 1.3rem;
    line-height: 1.8;
  }
}

@media screen and (max-width: 767px) {
  .pg-philosophy .p-backArea {
    padding-top: 40px;
  }
}

/**
 * pg-message
 */
.pg-message .p-imageHeading {
  background-image: url(../images/company/company_mv_bg01.jpg);
}

.pg-message .p-imageHeading .ja {
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .pg-message .p-imageHeading {
    background-image: url(../images/company/SP-business_img01.jpg);
  }
}

.pg-message main {
  padding-top: 42px;
}

@media screen and (max-width: 767px) {
  .pg-message main {
    padding-top: 60px;
  }
}

.pg-message .message__body {
  margin-top: calc(106px - 0.635em);
  font-size: 1.5rem;
  line-height: 2.27;
}

.pg-message .message__body p + p {
  margin-top: 2.27em;
}

.pg-message .message__foot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-top: calc(57px - 0.635em);
}

.pg-message .message__foot .name {
  margin-left: 24px;
  font-size: 2.6rem;
  letter-spacing: 0.3em;
  font-family: 'Noto Serif JP', serif;
}

@media screen and (max-width: 767px) {
  .pg-message .message__body {
    margin-top: calc(40px - 0.4em);
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .pg-message .message__body p + p {
    margin-top: 1.8em;
  }
  .pg-message .message__foot {
    margin-top: calc(20px - 0.4em);
    font-size: 1.2rem;
  }
  .pg-message .message__foot .name {
    margin-left: 15px;
    font-size: 1.5rem;
  }
}

.pg-message .mainvisual {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.pg-message .mainvisual__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  height: 100%;
  top: 85px;
  left: 0;
}

.pg-message .mainvisual__copy .script {
  margin-left: -48px;
}

.pg-message .mainvisual__copy .copy {
  margin-top: 26px;
  color: #fff;
  font-size: 3.4rem;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.25em;
}

.pg-message .mainvisual__copy .copy .text {
  display: inline-block;
  position: relative;
  padding: 16px 0.8em;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  border-radius: 5px;
}

.pg-message .mainvisual__copy .copy .text ~ .text {
  margin-top: 12px;
}

.pg-message .mainvisual__image {
  margin-right: -7.69%;
  width: 92.28%;
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

.pg-message .mainvisual__image img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 767px) {
  .pg-message .mainvisual__copy {
    display: block;
  }
  .pg-message .mainvisual__copy .script {
    margin: -25px 0 0 -15px;
    width: 192px;
  }
  .pg-message .mainvisual__copy .script img {
    width: 100%;
    height: auto;
  }
  .pg-message .mainvisual__copy .copy {
    margin-top: 18px;
    font-size: 1.5rem;
  }
  .pg-message .mainvisual__copy .copy .text {
    padding: 8px 0.8em;
  }
  .pg-message .mainvisual__copy .copy .text ~ .text {
    margin-top: 5px;
  }
  .pg-message .mainvisual__image {
    margin-right: 0;
    width: 96%;
  }
}

.pg-message .profile {
  position: relative;
  margin-top: 120px;
  padding: 100px 0 80px;
  background-color: #f1f3f6;
}

.pg-message .profile__heading {
  position: absolute;
  top: -68px;
  left: calc(50% - 145px);
}

.pg-message .profile__title {
  display: inline-block;
  padding: calc(9px - 0.465em);
  width: 144px;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.93;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
}

.pg-message .profile__copy {
  margin-top: calc(19px - 0.115em);
  font-size: 2.2rem;
  line-height: 1.23;
  font-weight: 500;
}

.pg-message .profile__imageText {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 55px;
}

.pg-message .profile__imageText .text {
  width: 69.21%;
  font-size: 1.5rem;
  line-height: 2.27;
  font-weight: lighter;
}

.pg-message .profile__imageText .text p + p {
  margin-top: 2.27em;
}

.pg-message .profile__imageText .image {
  width: 23.07%;
}

.pg-message .profile__imageText .image img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 767px) {
  .pg-message .profile {
    margin-top: 104px;
    padding: 88px 0 44px;
  }
  .pg-message .profile__heading {
    width: 176px;
    top: -44px;
    left: calc(50% - 88px);
  }
  .pg-message .profile__heading img {
    width: 100%;
    height: auto;
  }
  .pg-message .profile__title {
    display: block;
    margin: 0 auto;
    padding: calc(7px - 0.23em);
    width: 110px;
    font-size: 1.2rem;
    line-height: 1.46;
  }
  .pg-message .profile__copy {
    margin-top: calc(15px - 0.25em);
    text-align: center;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .pg-message .profile__imageText {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin-top: 32px;
  }
  .pg-message .profile__imageText .text {
    margin-top: calc(36px - 0.4em);
    width: 100%;
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .pg-message .profile__imageText .text p + p {
    margin-top: 1.8em;
  }
  .pg-message .profile__imageText .image {
    width: 100%;
    text-align: center;
  }
  .pg-message .profile__imageText .image img {
    width: 140px;
  }
}

@media screen and (max-width: 767px) {
  .pg-message .p-backArea {
    padding-top: 64px;
  }
}

/**
 * pg-history
 */
.pg-history .p-imageHeading {
  background-image: url(../images/company/company_mv_bg01.jpg);
}

.pg-history .p-imageHeading .ja {
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .pg-history .p-imageHeading {
    padding-top: 20px;
    background-image: url(../images/company/SP-business_img01.jpg);
  }
}

.pg-history main {
  padding-top: 42px;
}

@media screen and (max-width: 767px) {
  .pg-history main {
    padding-top: 0;
  }
}

.pg-history .history__list {
  padding-bottom: 165px;
}

@media screen and (max-width: 767px) {
  .pg-history .history__list {
    padding-bottom: 114px;
  }
}

.pg-history .historyItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding: 40px 0;
}

.pg-history .historyItem::before {
  content: '';
  position: absolute;
  top: 0;
  left: 195px;
  width: 1px;
  height: 100%;
  background-color: #b9d4ea;
}

.pg-history .historyItem__head {
  width: 195px;
  text-align: center;
  font-size: 2.6rem;
  line-height: 1;
}

.pg-history .historyItem__body {
  position: relative;
  padding-left: 92px;
  width: calc(100% - 195px);
  line-height: 2;
}

.pg-history .historyItem__body::before {
  content: '';
  position: absolute;
  top: 7px;
  left: -6px;
  border: 2px solid #fff;
  border-radius: 50%;
  width: 9px;
  height: 9px;
  background-color: #0086d1;
}

.pg-history .historyItem:first-of-type::before {
  top: auto;
  bottom: 0;
  height: calc(100% - 50px);
}

.pg-history .historyItem + .historyItem {
  border-top: 1px solid #e2e2e2;
}

.pg-history .historyItem:last-of-type {
  border-bottom: 1px solid #e2e2e2;
}

.pg-history .historyItem:last-of-type::before {
  height: calc(100% + 105px);
}

.pg-history .historyItem:last-of-type::after {
  content: '';
  position: absolute;
  bottom: -105px;
  left: 0;
  width: 100%;
  height: 35px;
  background: white;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(white));
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, white 100%);
}

@media screen and (max-width: 767px) {
  .pg-history .historyItem {
    padding: 33px 0;
  }
  .pg-history .historyItem::before {
    left: 60px;
  }
  .pg-history .historyItem__head {
    width: 60px;
    text-align: left;
    font-size: 1.85rem;
  }
  .pg-history .historyItem__body {
    padding-left: 20px;
    width: calc(100% - 60px);
    line-height: 1.8;
  }
  .pg-history .historyItem__body::before {
    top: 4px;
  }
  .pg-history .historyItem:last-of-type::before {
    height: calc(100% + 68px);
  }
  .pg-history .historyItem:last-of-type::after {
    bottom: -68px;
    height: 23px;
  }
}

.pg-history .episode {
  background-color: #f1f3f6;
  padding: 78px 0 100px;
}

@media screen and (max-width: 767px) {
  .pg-history .episode {
    padding: 52px 0 85px;
  }
}

@media screen and (max-width: 767px) {
  .pg-history .p-backArea {
    padding-top: 64px;
  }
}

/**
 * pg-sitemap
 */
.pg-sitemap .sitemap__navArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #e6e6e6;
  padding: 42px 0;
}

.pg-sitemap .sitemap__navArea:first-of-type {
  padding: 0 0 32px;
}

.pg-sitemap .sitemap__navArea:nth-child(2), .pg-sitemap .sitemap__navArea:nth-child(3) {
  padding: 42px 0 19px;
}

.pg-sitemap .sitemap__navArea:nth-child(2) .sitemap__navList, .pg-sitemap .sitemap__navArea:nth-child(3) .sitemap__navList {
  margin-top: -12px;
}

.pg-sitemap .sitemap__navTitle {
  width: 27.69%;
}

.pg-sitemap .sitemap__navTitle a {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2.11;
  letter-spacing: 0.1em;
  color: #000;
  text-decoration: none;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

[data-whatintent="mouse"] .pg-sitemap .sitemap__navTitle a:hover {
  color: #004ea2;
}

.pg-sitemap .sitemap__navList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 76.31%;
}

.pg-sitemap .sitemap__navList li {
  margin-right: 72px;
  width: calc((100% - (72px * 2)) / 3);
  padding: calc(11px - 0.4em) 0 calc(23px - 0.4em) 0;
}

.pg-sitemap .sitemap__navList li:nth-child(3n) {
  margin-right: 0;
}

.pg-sitemap .sitemap__navList li a {
  font-size: 1.5rem;
  line-height: 1.8;
  color: #000;
  text-decoration: none;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}
.pg-sitemap .sitemap__navTitle .smTitle {
font-weight: bold;
}

.pg-sitemap .sitemap__navList li a[target="_blank"] .c-link__text::after {
  background-image: url(../images/common/icon_newWin05.png);
}

[data-whatintent="mouse"] .pg-sitemap .sitemap__navList li a:hover {
  color: #004ea2;
}

@media screen and (max-width: 767px) {
  .pg-sitemap .sitemap__navArea {
    display: block;
    padding: 30px 0;
  }
  .pg-sitemap .sitemap__navArea:first-of-type {
    padding: 0 0 23px;
  }
  .pg-sitemap .sitemap__navArea:nth-child(2), .pg-sitemap .sitemap__navArea:nth-child(3) {
    padding: 30px 0 18px;
  }
  .pg-sitemap .sitemap__navArea:nth-child(2) .sitemap__navList, .pg-sitemap .sitemap__navArea:nth-child(3) .sitemap__navList {
    margin-top: 0;
  }
  .pg-sitemap .sitemap__navTitle {
    width: 100%;
  }
  .pg-sitemap .sitemap__navTitle a {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.19;
  }
  .pg-sitemap .sitemap__navList {
    width: 100%;
    padding-top: 10px;
  }
  .pg-sitemap .sitemap__navList li {
    margin-right: 0;
    width: 100%;
    padding: calc(11px - 0.4em) 0;
  }
  .pg-sitemap .sitemap__navList li:nth-child(3n) {
    margin-right: 0;
  }
  .pg-sitemap .sitemap__navList li a {
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .pg-sitemap .p-backArea {
    padding: 57px 0 0;
  }
  .pg-sitemap .sitemap__navTitle .smTitle {
	font-weight: bold;
  }
}

/**
 * pg-profile
 */
.pg-profile .p-imageHeading {
  background-image: url(../images/company/company_mv_bg01.jpg);
}

.pg-profile .p-imageHeading .ja {
  font-size: 5rem;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .pg-profile .p-imageHeading {
    background-image: url(../images/company/SP-business_img01.jpg);
  }
  .pg-profile .p-imageHeading .ja {
    font-size: 3rem;
    font-weight: 500;
  }
}

.pg-profile main {
  padding-top: 15px;
}


.pg-profile .mt60 {
  margin-top: 60px;
}

.pg-profile .executive li {
  float: left;
  text-align: center;
  padding-left: 5px;
}
.pg-profile .executive .katagaki {
  margin-top: 5px;
  font-size: 0.8em;
}
.pg-profile .executive .name {
  font-size: 1.2em;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .pg-profile .executive ul {
    width: 100%;
    text-align: center;
  }
  .pg-profile .executive li {
    padding: 5px;
    text-align: center;
  }
}



.pg-profile .organization {
  margin-top: 124px;
  padding: 83px 0 100px;
  background-color: #f1f3f6;
}

.pg-profile .organization .c-borderHeading {
  margin-top: 0;
}

.pg-profile .organization__figure {
  text-align: center;
}

.pg-profile .organization .attention {
  text-align: center;
}

.pg-profile .organization__info {
  margin-top: 93px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.pg-profile .organization__column {
  width: calc(33.33% - 58px);
  margin-right: 58px;
}

.pg-profile .organization__column:last-of-type {
  margin-right: 0;
}

.pg-profile .organization__column h3 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.11em;
}

.pg-profile .organization__column p {
  margin-top: 20px;
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  .pg-profile .organization {
    margin-top: 50px;
    padding: 50px 0 60px;
  }
  .pg-profile .organization__figure {
    padding: 0;
    margin-top: 45px;
    overflow-x: auto;
  }

  .pg-profile .organization .attention {
  text-align: left;
  }
  .pg-profile .organization__figure img {
    /* width: 100%; */  }
  .pg-profile .organization__info {
    margin-top: 50px;
    display: block;
  }
  .pg-profile .organization__column {
    width: 100%;
    margin-right: 0;
  }
  .pg-profile .organization__column h3 {
    font-size: 1.6rem;
  }
  .pg-profile .organization__column p {
    margin-top: 8px;
    font-size: 1.3rem;
    line-height: 1.81;
  }
  .pg-profile .organization__column + .organization__column {
    margin-top: 30px;
  }
}

.pg-profile .accesss {
  margin-top: 107px;
}

.pg-profile .accesss__column {
  margin-right: 40px;
}

.pg-profile .accesss__column:last-of-type {
  margin-right: 0;
}

.pg-profile .accesss__image figure img {
  width: 100%;
  -webkit-box-shadow: 0 0 43px rgba(154, 174, 205, 0.36);
  box-shadow: 0 0 43px rgba(154, 174, 205, 0.36);
}

.pg-profile .accesss__textArea {
  margin: 27px 0 0;
}

.pg-profile .accesss__textArea .upperArea {
  padding: 0 0 25px;
  border-bottom: 1px solid #e6e6e6;
}

.pg-profile .accesss__textArea .upperArea h3 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.5;
}

.pg-profile .accesss__textArea .upperArea p {
  margin-top: 10px;
  font-size: 1.4rem;
  line-height: 1.79;
}

.pg-profile .accesss__textArea .lowerArea {
  padding: 20px 0 0;
}

.pg-profile .accesss__textArea .lowerArea h4 {
  font-weight: bold;
  line-height: 1.5;
}

.pg-profile .accesss__textArea .lowerArea p {
  margin-top: 10px;
  font-size: 1.4rem;
  line-height: 1.79;
}

.pg-profile .accesss__map {
  margin: 11px 8px 0 0;
  text-align: right;
}

.pg-profile .accesss__map a {
  text-decoration: none;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

[data-whatintent="mouse"] .pg-profile .accesss__map a:hover {
  opacity: 0.7;
}

@media screen and (max-width: 767px) {
  .pg-profile .accesss {
    margin-top: 70px;
  }
  .pg-profile .accesss .c-column__item:nth-of-type(2), .pg-profile .accesss .c-column__item:nth-of-type(3) {
    margin-top: -20px;
  }
  .pg-profile .accesss__column {
    margin-top: 45px;
    margin-right: 0;
  }
  .pg-profile .accesss__textArea {
    margin: 18px 0 0;
  }
  .pg-profile .accesss__textArea .upperArea {
    padding: 0 0 12px;
    border-bottom: 1px solid #e6e6e6;
  }
  .pg-profile .accesss__textArea .upperArea h3 {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.69;
  }
  .pg-profile .accesss__textArea .upperArea p {
    margin-top: 4px;
  }
  .pg-profile .accesss__textArea .lowerArea {
    padding: 15px 0 0;
  }
  .pg-profile .accesss__textArea .lowerArea h4 {
    font-size: 1.6rem;
    line-height: 1.69;
  }
  .pg-profile .accesss__textArea .lowerArea p {
    margin-top: 4px;
    font-size: 1.4rem;
  }
  .pg-profile .accesss__map {
    margin: 5px 0 0 0;
  }
}

.pg-profile .gallery {
  margin-top: 96px;
  padding: 50px 0;
  background-color: #f1f3f6;
}

.pg-profile .gallery__inner {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-left: -20px;
}

.pg-profile .gallery__inner img {
  margin-right: 18px;
  height: 244px;
  width: auto;
}

@media screen and (max-width: 767px) {
  .pg-profile .gallery {
    margin-top: 43px;
    padding: 35px 0;
  }
  .pg-profile .gallery__inner {
    margin-left: -85px;
  }
  .pg-profile .gallery__inner img {
    margin-right: 13px;
    height: 170px;
  }
}

.pg-profile .p-backArea {
  padding: 70px 0 0;
}

@media screen and (max-width: 767px) {
  .pg-profile .p-backArea {
    padding: 36px 0 0;
  }
}

.pg-profile .l-footer {
  margin-top: 85px;
}

@media screen and (max-width: 767px) {
  .pg-profile .l-footer {
    margin-top: 70px;
  }
}

/**
 * pg-404
 */
.pg-404 .l-header header .navArea .gNavList li a[target="_blank"] .text::after {
  background-image: url(../images/common/icon_newWin02.png);
}

.pg-404 main {
  padding-top: 207px;
}

@media screen and (max-width: 767px) {
  .pg-404 main {
    padding-top: 114px;
  }
}

.pg-404 .message {
  position: relative;
  padding: calc(146px - 0.4em) 134px calc(86px - 0.4em);
  background-color: #f1f3f6;
}

.pg-404 .message__title {
  position: absolute;
  top: -31px;
  left: 134px;
}

.pg-404 .message__title .en {
  display: inline-block;
  color: #004fa3;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 6rem;
  line-height: 1;
  text-transform: uppercase;
}

@media all and (-ms-high-contrast: none) {
  .pg-404 .message__title .en {
    background: none;
  }
}

.pg-404 .message__title .ja {
  display: block;
  margin-top: calc(33px - 0.6875em);
  font-size: 1.6rem;
  line-height: 2.375;
  font-weight: bold;
}

.pg-404 .message .c-general {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .pg-404 .message {
    padding: calc(92px - 0.5em) 20px calc(56px - 0.5em);
  }
  .pg-404 .message__title {
    width: calc(100% - 40px);
    top: -19px;
    left: 20px;
  }
  .pg-404 .message__title .en {
    font-size: 3.5rem;
  }
  .pg-404 .message__title .ja {
    margin-top: calc(15px - 0.6875em);
  }
}

@media screen and (max-width: 767px) {
  .pg-404 .p-backArea {
    padding-top: 64px;
  }
}

.pg-404 .accesss {
  margin-top: 107px;
}
.pg-404 .accesss .c-container {
  padding: 0 20%;
}

.pg-404 .accesss__column {
  margin-right: 40px;
}

.pg-404 .accesss__column:last-of-type {
  margin-right: 0;
}

.pg-404 .accesss__image figure img {
  width: 100%;
  text-align: center;
}

.pg-404 .accesss__textArea {
  margin: 27px 0 0;
}

.pg-404 .accesss__textArea .upperArea {
  padding: 0 0 25px;
}

.pg-404 .accesss__textArea .upperArea h3 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.5;
}

.pg-404 .accesss__textArea .upperArea p {
  margin-top: 10px;
  font-size: 1.0rem;
  line-height: 1.79;
  text-align: center;
}

.pg-404 .accesss__textArea .lowerArea {
  padding: 20px 0 0;
}

.pg-404 .accesss__textArea .lowerArea p {
  margin-top: 10px;
  font-size: 1.4rem;
  line-height: 1.79;
  text-align: center;
}


@media screen and (max-width: 767px) {
  .pg-404 .accesss {
    margin-top: 70px;
  }
  .pg-404 .accesss .c-column__item:nth-of-type(2), .pg-404 .accesss .c-column__item:nth-of-type(3) {
    margin-top: -20px;
  }
  .pg-404 .accesss__column {
    margin-top: 45px;
    margin-right: 0;
  }
  .pg-404 .accesss__image figure img {
    width: 50%;
    text-align: center;
  }
  .pg-404 .accesss__textArea {
    margin: 18px 0 0;
  }
  .pg-404 .accesss__textArea .upperArea {
    padding: 0 0 12px;
  }
  .pg-404 .accesss__textArea .upperArea p {
    margin-top: 4px;
    text-align: center;
  }
  .pg-404 .accesss__textArea .lowerArea {
    padding: 15px 0 0;
  }
  .pg-404 .accesss__textArea .lowerArea p {
    margin-top: 4px;
    font-size: 1.0rem;
    text-align: center;
  }
}

/**
 * pg-pr
 */
.pg-pr main {
  padding-top: 0;
}

.pg-pr main > .c-container {
  position: relative;
  z-index: 1;
}

.pg-pr .p-breadcrumb {
  padding: 20px 0 10px;
  border-bottom: none;
}

.pg-pr .c-mainvisual .c-mainvisual__copy {
  position: absolute;
  bottom: auto;
}

.pg-pr .c-mainvisual .c-mainvisual__copy img {
  position: relative;
  display: block;
  top: 0;
  left: 0;
  width: auto;
}

.pg-pr .c-mainvisual .c-mainvisual__copy .blackText {
  display: inline-block;
  position: relative;
  margin-top: 50px;
  color: #000;
}

@media screen and (min-width: 768px) {
  .pg-pr .c-mainvisual {
    margin-bottom: 138px;
  }
  .pg-pr .c-mainvisual .c-mainvisual__copy {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .pg-pr .c-mainvisual .c-mainvisual__image {
    background-image: url(../images/pr/pr_mv_img01.jpg);
  }
}

@media screen and (max-width: 767px) {
  .pg-pr .c-mainvisual {
    margin-bottom: 60px;
  }
  .pg-pr .c-mainvisual .c-mainvisual__image {
    background-image: url(../images/pr/SP-pr_mv.jpg);
  }
  .pg-pr .c-mainvisual .c-mainvisual__copy {
    top: auto;
    bottom: 11%;
    width: 100%;
  }
  .pg-pr .c-mainvisual .c-mainvisual__copy img {
    left: -10px;
    width: 255px;
  }
  .pg-pr .c-mainvisual .c-mainvisual__copy .blackText {
    width: 86%;
    display: inline-block;
  }
}

.pg-pr .c-container section {
  margin-top: 80px;
}

.pg-pr .c-container section:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .pg-pr .c-container section {
    margin-top: 60px;
  }
}

.pg-pr .c-columnSet .c-leftBorderHeading02 {
  font-size: 2.8rem;
  margin-bottom: calc(70px - 0.06em);
}

.pg-pr .c-columnSet .c-column__item {
  display: block;
}

.pg-pr .c-columnSet .c-column__item .itemCont {
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

.pg-pr .c-columnSet .c-column__item.is-hidden {
  opacity: 0;
  height: 0;
  margin: 0;
}

.pg-pr .c-columnSet .c-image {
  min-height: 0%;
}

.pg-pr .c-columnSet .c-image img {
  width: 100%;
  height: auto;
}

.pg-pr .c-columnSet .c-video .c-videoWrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: calc(2 / 3 * 100%);
}

.pg-pr .c-columnSet .c-video .c-videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.pg-pr .c-columnSet .c-body {
  padding: 30px;
  background-color: #FFF;
}

.pg-pr .c-columnSet .c-body .data {
  font-size: 1.4rem;
  color: #949494;
}

.pg-pr .c-columnSet .c-body .title {
  font-size: 1.5rem;
  font-weight: bold;
}

.pg-pr .c-columnSet .c-body .text {
  margin-top: 30px;
  font-size: 1.4rem;
}

.pg-pr .c-columnSet .c-morebtn {
  margin-top: calc(90px - 3.4%);
}

.pg-pr .c-columnSet .c-morebtn.is-btn-hidden {
  display: none;
}

.pg-pr .c-columnSet .c-morebtn .c-button {
  text-align: left;
  padding: 0 35px 10px 0;
  width: auto;
  min-width: 213px;
}

.pg-pr .c-columnSet .c-morebtn .c-button__text {
  font-size: 1.5rem;
}

.pg-pr .c-columnSet .c-morebtn .c-button__plus {
  right: 0;
  width: 213px;
  height: 41px;
}

.pg-pr .c-columnSet .c-morebtn .c-button__plus:before, .pg-pr .c-columnSet .c-morebtn .c-button__plus:after {
  position: absolute;
  content: '';
  background-color: #004ea2;
}

.pg-pr .c-columnSet .c-morebtn .c-button__plus:before {
  top: calc(50% - 5px);
  right: 14px;
  width: 16px;
  height: 1px;
}

.pg-pr .c-columnSet .c-morebtn .c-button__plus:after {
  top: calc(50% - 13px);
  right: 22px;
  width: 1px;
  height: 16px;
}

@media screen and (max-width: 767px) {
  .pg-pr .c-columnSet .c-leftBorderHeading02 {
    font-size: 2.4rem;
    margin-bottom: calc(45px - 0.06em);
  }
  .pg-pr .c-columnSet .c-body {
    padding: 25px;
  }
  .pg-pr .c-columnSet .c-body .data {
    font-size: 1.2rem;
  }
  .pg-pr .c-columnSet .c-body .title {
    font-size: 1.4rem;
  }
  .pg-pr .c-columnSet .c-body .text {
    margin-top: 20px;
    font-size: 1.3rem;
  }
  .pg-pr .c-columnSet .c-morebtn {
    margin-top: 55px;
    margin-bottom: -35px;
  }
  .pg-pr .c-columnSet .c-morebtn .c-button {
    min-width: 145px;
    padding: 0 30px 6px 0;
    z-index: 1;
  }
  .pg-pr .c-columnSet .c-morebtn .c-button__text {
    font-size: 1.4rem;
  }
  .pg-pr .c-columnSet .c-morebtn .c-button__plus:before {
    top: calc(50% - 2px);
    right: 10px;
  }
  .pg-pr .c-columnSet .c-morebtn .c-button__plus:after {
    top: calc(50% - 10px);
    right: 18px;
  }
}

.pg-pr .p-backArea {
  padding-top: 80px;
}

.pg-pr .p-backArea .c-button {
  width: 213px;
  display: block;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .pg-pr .p-backArea {
    padding-top: 71px;
  }
  .pg-pr .p-backArea .c-button {
    z-index: 0;
    width: 145px;
  }
  .pg-pr .p-backArea .c-button__text {
    font-size: 1.4rem;
  }
}

/**
 * Component
 */
.c-container {
  padding: 0 12.08%;
  min-width: calc(1080px + (12.08% * 2));
}

.c-container--wide {
  padding: 0 6.87%;
}

.c-container--narrow {
  padding: 0 17.13%;
}

@media screen and (max-width: 767px) {
  .c-container {
    padding: 0 6.67%;
    min-width: 100%;
    width: auto;
  }
}

.c-enHeading .en {
  display: inline-block;
  font-family: 'Fitura', sans-serif;
  font-size: 5.1rem;
  letter-spacing: 0em;
  text-transform: uppercase;
  color: #004fa3;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media all and (-ms-high-contrast: none) {
  .c-enHeading .en {
    background: none;
  }
}

.c-enHeading .ja {
  margin-top: -6px;
  display: block;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 2.375;
}

@media screen and (max-width: 767px) {
  .c-enHeading .en {
    font-size: 3.3rem;
  }
  .c-enHeading .ja {
    margin-top: -10px;
    font-size: 1.1rem;
    line-height: 2.07;
  }
}

.c-linkButton {
  width: 360px;
  min-height: 84px;
}

.c-linkButton a,
.c-linkButton button {
  display: block;
  position: relative;
  border: 1px solid #cfcfcf;
  padding: calc(34px - 0.6875em) 57px calc(34px - 0.6875em) 37px;
  color: #000;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 2.375;
  text-decoration: none;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: .3s;
  transition-duration: .3s;
}

.c-linkButton a[target="_blank"]::after,
.c-linkButton button[target="_blank"]::after {
  content: '';
  position: absolute;
  margin-top: -5px;
  top: 50%;
  right: 30px;
  width: 11px;
  height: 11px;
  background: url(../images/common/icon_newWin02.png) center/contain no-repeat;
}

.c-linkButton a[target="_blank"] .arrow,
.c-linkButton button[target="_blank"] .arrow {
  display: none;
}

[data-whatintent="mouse"] .c-linkButton a[target="_blank"]:hover::after, [data-whatintent="mouse"]
.c-linkButton button[target="_blank"]:hover::after {
  background-image: url(../images/common/icon_newWin01.png);
}

.c-linkButton a::before,
.c-linkButton button::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.c-linkButton a .text,
.c-linkButton a .arrow,
.c-linkButton button .text,
.c-linkButton button .arrow {
  position: relative;
  z-index: 1;
}

.c-linkButton a .arrow,
.c-linkButton button .arrow {
  position: absolute;
  width: 26px;
  height: 6px;
  color: #004fa3;
  -webkit-transition: color .3s;
  transition: color .3s;
  top: calc(50% - 3px);
  right: 30px;
}

.c-linkButton a .arrow::before, .c-linkButton a .arrow::after,
.c-linkButton button .arrow::before,
.c-linkButton button .arrow::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: currentColor;
  height: 1px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.c-linkButton a .arrow::before,
.c-linkButton button .arrow::before {
  width: 100%;
}

.c-linkButton a .arrow::after,
.c-linkButton button .arrow::after {
  width: 5px;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

[data-whatintent="mouse"] .c-linkButton a:hover, [data-whatintent="mouse"]
.c-linkButton button:hover {
  color: #fff;
}

[data-whatintent="mouse"] .c-linkButton a:hover::before, [data-whatintent="mouse"]
.c-linkButton button:hover::before {
  opacity: 1;
}

[data-whatintent="mouse"] .c-linkButton a:hover .arrow, [data-whatintent="mouse"]
.c-linkButton button:hover .arrow {
  color: #fff;
}

.c-linkButton--lg {
  width: 504px;
}

.c-linkButton--lg a {
  padding: calc(37px - 0.6875em) 57px calc(34px - 0.6875em) 42px;
}

.c-linkButton--inversion button {
  width: 100%;
  text-align: right;
  padding: calc(34px - 0.6875em) 37px calc(34px - 0.6875em) 57px;
}

.c-linkButton--inversion button .text,
.c-linkButton--inversion button .arrow {
  position: relative;
  z-index: 1;
}

.c-linkButton--inversion button .arrow {
  position: absolute;
  width: 26px;
  height: 6px;
  color: #004fa3;
  -webkit-transition: color .3s;
  transition: color .3s;
  top: calc(50% - 3px);
  right: auto;
  left: 0;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.c-linkButton--inversion button .arrow::before, .c-linkButton--inversion button .arrow::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: currentColor;
  height: 1px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.c-linkButton--inversion button .arrow::before {
  width: 100%;
}

.c-linkButton--inversion button .arrow::after {
  width: 5px;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-linkButton--inversion button .arrow::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

[data-whatintent="mouse"] .c-linkButton--inversion button:hover {
  color: #fff;
}

[data-whatintent="mouse"] .c-linkButton--inversion button:hover::before {
  opacity: 1;
}

[data-whatintent="mouse"] .c-linkButton--inversion button:hover .arrow {
  color: #fff;
}

@media screen and (max-width: 767px) {
  .c-linkButton {
    width: 275px;
    min-height: 60px;
  }
  .c-linkButton a {
    padding: calc(22px - 0.175em) 49px calc(22px - 0.175em) 29px;
    font-size: 1.4rem;
    line-height: 1.35;
  }
  .c-linkButton a .arrow {
    right: 23px;
  }
  .c-linkButton--lg a {
    padding: calc(20px - 0.6875em) 57px calc(20px - 0.6875em) 25px;
  }
  .c-linkButton--inversion button {
    width: 100%;
    padding: calc(23px - 0.18em) 29px calc(23px - 0.18em) 60px;
    font-size: 1.4rem;
    line-height: 1.36;
  }
}

.c-readMore {
  display: inline-block;
  position: relative;
  padding: 0 40px calc(20px - 0.765em) 0;
  width: 140px;
  line-height: 2.53;
  text-align: left;
  font-weight: 500;
  text-transform: uppercase;
  text-decoration: none;
  -webkit-transition: color .3s;
  transition: color .3s;
  color: #000;
}

.c-readMore::before, .c-readMore::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
}

.c-readMore::before {
  width: 100%;
  background-color: #e2e2e2;
}

.c-readMore::after {
  background-color: #004fa3;
  width: 0;
  -webkit-transition: width .3s;
  transition: width .3s;
}

.c-readMore__text {
  letter-spacing: 0.05em;
}

.c-readMore__text:not([lang="en"]) {
  font-weight: bold;
}

.c-readMore__arrow {
  position: absolute;
  width: 26px;
  height: 6px;
  color: #004fa3;
  -webkit-transition: color .3s;
  transition: color .3s;
  top: calc((50% - 5px) - 3px);
  right: 0;
}

.c-readMore__arrow::before, .c-readMore__arrow::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: currentColor;
  height: 1px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.c-readMore__arrow::before {
  width: 100%;
}

.c-readMore__arrow::after {
  width: 5px;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

[data-whatintent="mouse"] .c-readMore:hover {
  color: #004fa3;
}

[data-whatintent="mouse"] .c-readMore:hover::after {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .c-readMore {
    padding: 0 24px calc(15px - 0.765em) 0;
    width: 112px;
  }
  .c-readMore__arrow {
    top: calc(50% - 6px);
  }
  .c-readMore__arrow::before {
    width: 18px;
  }
}

.c-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.c-column__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-column--2col {
  margin: -6.67% 0 0 -6.67%;
}

.c-column--2col .c-column__item {
  padding: 6.67% 0 0 6.67%;
  width: 50%;
}

.c-column--3col {
  margin: -3.43% 0 0 -3.43%;
}

.c-column--3col .c-column__item {
  padding: 3.4% 0 0 3.4%;
  width: 33.33%;
}

@media screen and (max-width: 767px) {
  .c-column {
    display: block;
  }
  .c-column__item {
    display: block;
  }
  .c-column--2col, .c-column--3col {
    margin: 0;
  }
  .c-column--2col .c-column__item, .c-column--3col .c-column__item {
    padding: 0;
    width: 100%;
  }
  .c-column--2col .c-column__item + .c-column__item {
    margin-top: 50px;
  }
  .c-column--3col .c-column__item + .c-column__item {
    margin-top: 30px;
  }
}

.c-leftBorderHeading {
  position: relative;
  margin-bottom: calc(71px - 0.06em);
  padding-bottom: calc(40px - 0.06em);
  border-bottom: 1px solid #bebebe;
  text-align: center;
  font-size: 3.4rem;
  font-weight: normal;
  line-height: 1.12;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .c-leftBorderHeading {
    margin-bottom: calc(51px - 0.18em);
    border-bottom: 1px solid #8c8c8c;
    padding: 0 0 calc(17px - 0.18em) 0;
    text-align: center;
    font-size: 2.2rem;
  }
  .c-leftBorderHeading::before {
    content: none;
  }
}

.c-borderHeading {
  position: relative;
  margin-bottom: calc(71px - 0.06em);
  padding-bottom: calc(40px - 0.06em);
  border-bottom: 1px solid #bebebe;
  text-align: center;
  font-size: 3.4rem;
  font-weight: normal;
  line-height: 1.12;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .c-borderHeading {
    margin: 60px 0 calc(45px - 0.06em);
    padding-bottom: calc(16px - 0.06em);
    font-size: 2.5rem;
  }
}

.c-leftBorderHeading02 {
  position: relative;
  margin-bottom: calc(50px - 0.06em);
  padding-left: 23px;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.58333;
  letter-spacing: 0;
}

.c-leftBorderHeading02:before, .c-leftBorderHeading02:after {
  content: "";
  display: block;
  width: 3px;
  position: absolute;
  top: 0.36em;
  left: 0;
}

.c-leftBorderHeading02:before {
  background-color: #0d96e2;
  height: calc(100% - 0.48em);
}

.c-leftBorderHeading02:after {
  background-color: #004ea2;
  height: 14px;
}

.c-leftBorderHeading02 span {
  color: #004ea2;
}

.c-leftBorderHeading02 strong {
  display: inline-block;
  vertical-align: middle;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  color: #fff;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: 0.1rem;
  padding: 6px 25px 9px;
  margin-left: 25px;
}

@media screen and (max-width: 767px) {
  .c-leftBorderHeading02 {
    font-size: 1.6rem;
    line-height: 1.3125;
    padding-left: 17px;
    margin-bottom: calc(26px - 0.06em);
  }
  .c-leftBorderHeading02:before, .c-leftBorderHeading02:after {
    top: 0.18em;
  }
  .c-leftBorderHeading02:before {
    height: calc(100% - 0.48em*0.5);
  }
  .c-leftBorderHeading02:after {
    height: 9px;
  }
  .c-leftBorderHeading02 strong {
    display: table;
    margin-left: -18px;
    position: relative;
    border: solid #fff;
    border-width: 18px 0 0 1px;
    font-size: 1.3rem;
    padding: 5px 21px 7px;
    margin-bottom: calc(30px - 0.06em);
  }
}

.c-centetHeading {
  font-size: 2rem;
  line-height: 2;
  text-align: center;
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
  .c-centetHeading {
    line-height: 1.71429;
    font-size: 1.4rem;
    margin-bottom: 36px;
    text-align: left;
  }
}

.c-bottomBorderHeading {
  margin-bottom: 64px;
  padding-bottom: 46px;
  text-align: center;
  font-size: 3.8rem;
  line-height: 1;
  border-bottom: 1px solid #ababab;
}

@media screen and (max-width: 767px) {
  .c-bottomBorderHeading {
    margin-bottom: calc(39px - 0.15em);
    padding-bottom: calc(27px - 0.15em);
    font-size: 2.4rem;
    line-height: 1.3;
  }
}

.c-newsList {
  width: 100%;
}

.c-newsList > li:first-of-type .c-newsList__item {
  border-top: 1px solid #e2e2e2;
}

.c-newsList__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: calc(32px - .4em) 49px calc(32px - .4em) 0;
  border-bottom: 1px solid #e2e2e2;
}

.c-newsList__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 26.67%;
}

.c-newsList__cat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-left: 42px;
  padding: 0px 5px 2px;
  min-width: 130px;
  font-size: 1.2rem;
  color: #fff;
  background-color: #aaa;
}

.c-newsList__cat--press {
  background-color: #1f9fda;
}

.c-newsList__cat--products {
  background-color: #17aeb6;
}

.c-newsList__cat--info {
  background-color: #ec6d81;
}

.c-newsList__cat--important {
  background-color: #fe9308;
}

.c-newsList__title {
  width: 73.33%;
}

.c-newsList__title a {
  color: #000;
  text-decoration: none;
}

[data-whatintent="mouse"] .c-newsList__title a:hover {
  color: #0050a3;
  text-decoration: underline;
}

[data-whatintent="mouse"] .c-newsList__title a:hover .arrow {
  opacity: 1;
}

[data-whatintent="mouse"] .c-newsList__title a:not([href]):hover {
  color: #000;
  text-decoration: none;
}

[data-whatintent="mouse"] .c-newsList__title a:not([href]):hover .arrow {
  opacity: 0;
}

.c-newsList__title a .arrow {
  position: absolute;
  width: 26px;
  height: 6px;
  color: #004fa3;
  -webkit-transition: color .3s;
  transition: color .3s;
  right: 0;
  opacity: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.c-newsList__title a .arrow::before, .c-newsList__title a .arrow::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: currentColor;
  height: 1px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.c-newsList__title a .arrow::before {
  width: 100%;
}

.c-newsList__title a .arrow::after {
  width: 5px;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-newsList--noArticle li:first-of-type .c-newsList__item {
  border-top: none;
}

.c-newsList--noArticle .c-newsList__item {
  padding-right: 0;
}

.c-newsList--noArticle .c-newsList__title {
  width: 100%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .c-newsList > li:first-of-type .c-newsList__item {
    padding-top: calc(25px - .5em);
  }
  .c-newsList__item {
    display: block;
    padding: calc(25px - .5em) 0;
  }
  .c-newsList__meta {
    width: 100%;
  }
  .c-newsList__cat {
    margin-left: 13px;
    padding: 0 12px 2px;
    min-width: 105px;
    font-size: 1.1rem;
    line-height: 1.5;
  }
  .c-newsList__title {
    width: 100%;
    margin-top: calc(15px - .5em);
  }
  [data-whatintent="mouse"] .c-newsList__title a:hover .arrow {
    opacity: 0;
  }
}

/**
* アイコンつきリンク
*/
.c-link {
  color: #000;
  text-decoration: none;
}

.c-link:hover {
  color: #0050a3;
  text-decoration: underline;
}

.c-link__text {
  position: relative;
}

.c-link[href$=".pdf"] .c-link__text {
  padding-right: 20px;
}

.c-link[href$=".pdf"] .c-link__text::after {
  content: '';
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 14px;
  height: 15px;
  background: url(../images/common/icon_pdf01.png) center/contain no-repeat;
}

.c-link[target="_blank"] .c-link__text {
  padding-right: 20px;
}

.c-link[target="_blank"] .c-link__text::after {
  content: '';
  position: absolute;
  bottom: 4px;
  right: 0px;
  width: 11px;
  height: 11px;
  background: url(../images/common/icon_newWin02.png) center/contain no-repeat;
}

.c-link--blue[target="_blank"] .c-link__text::after {
  background-image: url(../images/common/icon_newWin05.png);
}

.c-general {
  margin-top: calc(40px - 0.5em);
  letter-spacing: 0.08em;
  line-height: 2;
}

.c-general p:not(class) + p:not(class) {
  margin-top: 2em;
}

.c-general figure img {
  max-width: 100%;
}

.c-general sup {
  vertical-align: super;
  font-size: 1rem;
}

.c-general sub {
  vertical-align: bottom;
  font-size: 1rem;
}

.c-general > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: calc(37px - 0.4em) 25px;
  border-top: 1px solid #e2e2e2;
  border-bottom: 1px solid #e2e2e2;
}

.c-general > dl + dl {
  border-top: none;
}

.c-general > dl > dt {
  width: 17.87%;
  font-weight: bold;
}

.c-general > dl > dd {
  width: 82.13%;
}

.c-general > dl dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.c-general > dl dl dt {
  width: 20%;
}

.c-general > dl dl dd {
  width: 70%;
}

@media screen and (max-width: 767px) {
  .c-general {
    margin-top: calc(30px - 0.5em);
    letter-spacing: 0.05em;
    line-height: 1.8;
  }
  .c-general > dl {
    padding: calc(20px - 0.4em) 0;
  }
  .c-general > dl > dt {
    width: 25.87%;
  }
  .c-general > dl > dd {
    width: 75.13%;
  }
  .c-general > dl dl dt {
    width: 55%;
  }
  .c-general > dl dl dd {
    width: 40%;
  }
  .c-general > dl dl .c-definition {
    width: 100%;
  }
  .c-general > dl dl .c-definition + .c-definition {
    margin-top: 10px;
  }
}

.c-boldHeading {
  margin: calc(38px - 0.45em) 0 calc(33px - 0.45em);
  font-size: 2rem;
  line-height: 1.9;
  letter-spacing: 0.05em;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .c-boldHeading {
    margin: calc(41px - 0.45em) 0 calc(25px - 0.45em);
    font-size: 1.6rem;
  }
}

.c-mainImage {
  padding: 34px;
  width: 100%;
  text-align: center;
  background-color: #fff;
}

.c-mainImage img {
  max-width: 100%;
  height: auto;
}

.c-mainImage--shadow {
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

.c-mainImage--gray {
  padding: 20px;
  background-color: #f1f3f6;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .c-mainImage {
    padding: 10.77% 17.38%;
  }
  .c-mainImage--gray {
    padding: 0% 0;
  }
}

.c-button {
  display: block;
  position: relative;
  padding-bottom: 10px;
  margin: 0 auto;
  width: 213px;
  color: #000;
  text-align: right;
  font-weight: bold;
  line-height: 2.53;
  text-transform: uppercase;
  text-decoration: none;
  -webkit-transition: color .3s;
  transition: color .3s;
}

.c-button::before, .c-button::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
}

.c-button::before {
  width: 100%;
  background-color: #d8d8d8;
}

.c-button::after {
  background-color: #004fa3;
  width: 0;
  -webkit-transition: width .3s;
  transition: width .3s;
}

.c-button__arrow {
  position: absolute;
  width: 26px;
  height: 6px;
  color: #004fa3;
  -webkit-transition: color .3s;
  transition: color .3s;
  margin-top: -6px;
  top: calc(50% - 3px);
  left: 0;
}

.c-button__arrow::before, .c-button__arrow::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: currentColor;
  height: 1px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.c-button__arrow::before {
  width: 100%;
}

.c-button__arrow::after {
  width: 5px;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-button__arrow::before, .c-button__arrow::after {
  background-color: #004fa3;
}

.c-button__arrow::after {
  right: auto;
  left: 0;
  -webkit-transform-origin: left bottom;
  transform-origin: left bottom;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

[data-whatintent="mouse"] .c-button:hover {
  color: #004fa3;
}

[data-whatintent="mouse"] .c-button:hover::after {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .c-button a {
    display: block;
    position: relative;
    padding-bottom: 4px;
    margin: 0 auto;
    border-bottom: 1px solid #d8d8d8;
    width: 150px;
    text-align: right;
    color: #000;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 2.53;
    text-decoration: none;
  }
  .c-button__arrow {
    position: absolute;
    width: 26px;
    height: 6px;
    color: #004fa3;
    -webkit-transition: color .3s;
    transition: color .3s;
    width: 19px;
    margin-top: -2px;
    top: calc(50% - 3px);
    left: 0;
  }
  .c-button__arrow::before, .c-button__arrow::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    background-color: currentColor;
    height: 1px;
    -webkit-transition: background-color .3s;
    transition: background-color .3s;
  }
  .c-button__arrow::before {
    width: 100%;
  }
  .c-button__arrow::after {
    width: 5px;
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .c-button__arrow::before, .c-button__arrow::after {
    background-color: #004fa3;
  }
  .c-button__arrow::after {
    right: auto;
    left: 0;
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

.c-mainvisual {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 58vh;
}

.c-mainvisual__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/contact/contact_mv_img01.jpg) center/cover no-repeat;
}

.c-mainvisual .c-mainvisual__copy {
  position: absolute;
  top: 50%;
  left: 12.08%;
  width: calc(100% - (12.08% *2));
  color: #FFF;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 2.5;
  letter-spacing: 0.15em;
}

.c-mainvisual .c-mainvisual__copy img {
  opacity: 1;
  position: absolute;
  top: -180px;
  left: -23px;
  width: 400px;
}

.c-mainvisual .c-mainvisual__copy .whiteText {
  display: inline-block;
  position: relative;
  margin-top: 35px;
}

.c-mainvisual__scroll {
  position: absolute;
  bottom: 33px;
  right: 60px;
  padding-bottom: 51px;
}

.c-mainvisual__scroll::before, .c-mainvisual__scroll::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: calc(50% - 1px);
  width: 1px;
  background-color: #000;
}

.c-mainvisual__scroll::before {
  height: 46px;
}

.c-mainvisual__scroll::after {
  height: 7px;
  -webkit-transform-origin: bottom;
  transform-origin: bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-mainvisual__scroll .text {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 0.88;
  color: #0086d1;
  text-transform: uppercase;
}

@media screen and (max-width: 767px) {
  .c-mainvisual {
    width: 100%;
    height: 45vw;
  }
  .c-mainvisual__image {
    background-image: url(../images/contact/SP-contact_mv_img01.jpg);
  }
  .c-mainvisual .c-mainvisual__copy {
    top: 25%;
    bottom: 63px;
    left: 6.67%;
    font-size: 1.3rem;
    line-height: 2;
  }
  .c-mainvisual .c-mainvisual__copy img {
    position: absolute;
    opacity: 1;
    top: -56px;
    left: -10px;
    width: 200px;
    z-index: 1;
  }
  .c-mainvisual .c-mainvisual__copy .whiteText {
    z-index: 1;
    margin-top: 70px;
    color: #ffffff;
    background-color: #000000;
    padding:5px 10px;
  }
  .c-mainvisual__scroll {
    display: none;
  }
}

.c-shadowBox {
  margin-top: 46px;
  padding: 50px 50px 57px;
  width: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

@media screen and (max-width: 767px) {
  .c-shadowBox {
    margin-top: 35px;
    padding: 30px 28px 33px;
    width: 100%;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
    box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  }
}

.c-input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #e1e1e1;
  padding: 20px 36px 20px 30px;
}

.c-input:last-of-type {
  border-bottom: 1px solid #e1e1e1;
}

.c-input__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 10px;
  width: 236px;
}

.c-input__heading .title {
  font-weight: bold;
}

.c-input__heading .inquiry {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 5px;
  padding: 0 8px 1px;
  height: 1.5em;
  border-radius: 4px;
  background-color: #ff6f6f;
  font-size: 1.1rem;
  line-height: 1;
  font-weight: 500;
  color: #fff;
}

.c-input__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 43px;
  width: calc(100% - 236px);
}

.c-input__body input,
.c-input__body textarea,
.c-input__body select {
  border-radius: 5px;
  border: 1px solid #e8e8e8;
  padding: calc(17px - 0.4em) 25px;
  width: 100%;
  background-color: #f9f9f9;
  line-height: 1.8;
}

.c-input__body input ::placeholde,
.c-input__body textarea ::placeholde,
.c-input__body select ::placeholde {
  color: #989898;
}

.c-input__body textarea {
  height: 207px;
}

.c-input__body select {
  padding: 15px 25px;
  width: 100%;
}

.c-input__body .select {
  position: relative;
  width: 45.76%;
}

.c-input__body .select::before, .c-input__body .select::after {
  content: '';
  position: absolute;
  pointer-events: none;
}

.c-input__body .select::before {
  width: 12px;
  height: 12px;
  right: 2px;
  top: calc(50% - 6px);
  background-color: #f9f9f9;
}

.c-input__body .select::after {
  top: calc(50% - 5px);
  right: 18px;
  width: 11px;
  height: 10px;
  background: url(../images/common/icon_triangle01.png) center/contain no-repeat;
}

.c-input__body .radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
  .c-input__body .radio .paragraphOn {
    margin-right: 122px;
    padding-top: 31px;
  }
  .c-input__body .radio .paragraphOn + .radioBtn {
    padding-top: 31px;
    margin-right: 0;
  }
}

.c-input__body .radio--contact {
  width: 820px;
}

@media screen and (max-width: 767px) {
  .c-input__body .radio {
    display: block;
    margin-left: -10px;
  }
}

.c-input__body .radioBtn {
  margin-right: 44px;
}

.c-input__body .radioBtn input[type="radio"] {
  display: none;
}

.c-input__body .radioBtn input[type="radio"]:checked + .text::after {
  opacity: 1;
}

.c-input__body .radioBtn .text {
  position: relative;
  padding-left: 34px;
  cursor: pointer;
  color: #222;
}

.c-input__body .radioBtn .text::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #9e9e9e;
  border-radius: 50%;
  background-color: #f1f3f6;
}

.c-input__body .radioBtn .text::after {
  content: '';
  position: absolute;
  opacity: 0;
  top: 5px;
  left: 5px;
  border-radius: 50%;
  width: 14px;
  height: 14px;
  background-color: #000;
}

@media screen and (max-width: 767px) {
  .c-input__body .radioBtn .text::before {
    top: -2px;
  }
  .c-input__body .radioBtn .text::after {
    top: 3px;
  }
}

@media screen and (max-width: 767px) {
  .c-input__body .radioBtn {
    display: inline-block;
    width: none;
    margin-right: 0;
    padding: 0 10px 0 10px;
    padding-bottom: 10px;
  }
  .c-input__body .radioBtn:last-child {
    padding-bottom: 0;
  }
}

.c-input__error {
  margin-top: calc(14px - 0.465em);
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.93;
  color: #f91516;
}

.c-input--zip .c-input__body input {
  width: 180px;
  margin: 0 36px 0 22px;
}

.c-input--tel .c-input__body input {
  width: 232px;
  margin-right: 36px;
}

.c-input--half .c-input__body input {
  width: 45.76%;
}

@media screen and (max-width: 767px) {
  .c-input--half .c-input__body input {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .c-input {
    display: block;
    padding: 10px 0 16px;
  }
  .c-input__heading {
    width: 100%;
    padding-top: 0;
  }
  .c-input__heading .title {
    font-size: 1.4rem;
    font-weight: bold;
  }
  .c-input__heading .inquiry {
    padding: 0 8px;
    height: 1.5em;
    border-radius: 4px;
    font-size: 1.1rem;
  }
  .c-input__body {
    margin-top: 11px;
    padding-left: 0;
    width: 100%;
  }
  .c-input__body input,
  .c-input__body textarea,
  .c-input__body select {
    padding: calc(17px - 0.4em) 25px;
  }
  .c-input__body textarea {
    height: 193px;
  }
  .c-input__body select {
    padding: 15px 25px;
  }
  .c-input__body .select {
    width: 100%;
  }
  .c-input__body > p {
    font-size: 1.4rem;
  }
  .c-input--zip .c-input__body input {
    width: 128px;
    margin: 0 16px 0 12px;
  }
  .c-input--zip .c-input__body > p:first-of-type {
    padding-left: 10px;
  }
  .c-input--tel .c-input__body input {
    width: 50%;
    margin-right: 16px;
  }
  .c-input--half .c-input__body input {
    width: 100%;
  }
}

.c-submitButton {
  display: block;
  position: relative;
  padding: calc(36px - 0.69em) 30px;
  width: 360px;
  text-align: left;
  font-size: 1.6rem;
  line-height: 2.38;
  color: #fff;
  background-color: #ff611b;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

[data-whatintent="mouse"] .c-submitButton:hover {
  opacity: 0.8;
}

.c-submitButton__arrow {
  position: absolute;
  width: 26px;
  height: 6px;
  color: #004fa3;
  -webkit-transition: color .3s;
  transition: color .3s;
  top: calc(50% - 6px);
  right: 30px;
}

.c-submitButton__arrow::before, .c-submitButton__arrow::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: currentColor;
  height: 1px;
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.c-submitButton__arrow::before {
  width: 100%;
}

.c-submitButton__arrow::after {
  width: 5px;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-submitButton__arrow::before, .c-submitButton__arrow::after {
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  .c-submitButton {
    padding: calc(23px - 0.18em) 60px calc(23px - 0.18em) 29px;
    width: 275px;
    font-size: 1.4rem;
    line-height: 1.36;
  }
  .c-submitButton__arrow {
    right: 23px;
  }
}

.c-bgGray {
  background-color: #f1f3f6;
  padding: 1px 0 88px;
  margin-top: 120px;
}

@media screen and (max-width: 767px) {
  .c-bgGray {
    margin-top: 70px;
    padding: 1px 0 50px;
  }
}

.c-grayLineBox {
  background-color: #f1f3f6;
  border: 2px solid #e9edf2;
  padding: 25px 60px;
  margin-top: 30px;
  font-size: 1.4rem;
  line-height: 1.85714;
}

@media screen and (max-width: 767px) {
  .c-grayLineBox {
    font-size: 1.2rem;
    line-height: 1.79167;
    padding: 15px 18px;
  }
}

.c-businessList {
  position: relative;
}

.c-businessList:nth-child(n+2) {
  margin-top: 156px;
}

@media screen and (max-width: 767px) {
  .c-businessList:nth-child(n+2) {
    margin-top: 41px;
  }
}

.c-businessList__imgArea img {
  width: 100%;
}

.c-businessList__mainArea {
  line-height: 1.8;
}

.c-businessList__mainArea--heading {
  display: inline-block;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  font-size: 3rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.267;
  padding: 20px 69px;
  white-space: nowrap;
  border-radius: 5px;
}

.c-businessList__mainArea .u-tar {
  margin-top: 35px;
}

@media screen and (min-width: 768px) {
  .c-businessList__mainArea {
    position: absolute;
    bottom: -59px;
    max-width: 576px;
  }
  .c-businessList__mainArea .c-shadowBox {
    margin: 30px 0 0;
    padding: 50px 72px 42px;
  }
}

@media screen and (max-width: 767px) {
  .c-businessList__mainArea {
    position: relative;
    margin: -90px 12px 0;
  }
  .c-businessList__mainArea--heading {
    font-size: 1.8rem;
    padding: 13px 24px;
    white-space: inherit;
  }
  .c-businessList__mainArea--heading.is-small {
    font-size: 1.65rem;
  }
  .c-businessList__mainArea .u-tar {
    margin-top: 10px;
  }
  .c-businessList__mainArea .c-shadowBox {
    margin-top: 13px;
    padding: 25px 25px 26px;
  }
}

@media screen and (min-width: 768px) {
  .c-businessList.is-txtRight .c-general {
    right: 72px;
  }
}

@media screen and (min-width: 768px) {
  .c-businessList.is-txtLeft .c-general {
    left: 72px;
  }
}

.c-thumbLink01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.c-thumbLink01__imageArea {
  min-height: 0%;
  width: 100%;
}

.c-thumbLink01__imageArea img {
  width: 100%;
  height: auto;
}

.c-thumbLink01__textArea {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding: calc(78px - 0.4em) 0 0;
  width: 100%;
}

.c-thumbLink01__textArea .title {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  padding: calc(30px - 0.175em) 14.88% calc(30px - 0.175em) 0;
  width: auto;
  min-width: 52.18%;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.35;
  background-color: #f1f3f6;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.c-thumbLink01__textArea .title .ja {
  display: block;
}

.c-thumbLink01__textArea .title .en {
  display: inline-block;
  margin-top: 10px;
  font-size: 1.3rem;
  color: #004fa3;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-transform: uppercase;
}

@media all and (-ms-high-contrast: none) {
  .c-thumbLink01__textArea .title .en {
    background: none;
  }
}

.c-thumbLink01__textArea .text {
  position: relative;
  line-height: 2;
  letter-spacing: 0.15em;
}

@media screen and (max-width: 767px) {
  .c-thumbLink01__textArea {
    padding: calc(34px - 0.5em) 0 0;
  }
  .c-thumbLink01__textArea .title {
    padding: calc(20px - 0.27em) 15.38% 0 0;
    font-size: 1.6rem;
    line-height: 1.54;
    -webkit-transform: translateY(-98%);
    transform: translateY(-98%);
  }
  .c-thumbLink01__textArea .text {
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .c-thumbLink01 .u-tar {
    margin-top: 16px;
  }
}

@media screen and (min-width: 768px) {
  .c-textAndImage {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.c-textAndImage__imgArea img {
  width: 100%;
}

.c-textAndImage__imgArea img:nth-child(n+2) {
  margin-top: 18px;
}

@media screen and (max-width: 767px) {
  .c-textAndImage__imgArea img:nth-child(n+2) {
    margin-top: 25px;
  }
}

@media screen and (max-width: 767px) {
  .c-textAndImage__imgArea {
    margin-bottom: 20px;
  }
}

.c-textAndImage__txtArea {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.c-textAndImage__txtArea--checkHeading {
  position: relative;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.778;
  margin: 30px 0 20px;
  padding-left: 36px;
}

.c-textAndImage__txtArea--checkHeading:before {
  content: "";
  display: inline-block;
  vertical-align: -2px;
  width: 26px;
  height: 18px;
  background: url(../images/common/icon_check01.png) 50% 50% no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 9px;
}

@media screen and (max-width: 767px) {
  .c-textAndImage__txtArea--checkHeading {
    font-size: 1.6rem;
    line-height: 1.4375;
    padding-left: 26px;
  }
  .c-textAndImage__txtArea--checkHeading:before {
    width: 16px;
    height: 12px;
    top: 6px;
  }
}

@media screen and (min-width: 768px) {
  .c-textAndImage.is-imgLeft .c-textAndImage__imgArea {
    max-width: 504px;
  }
  .c-textAndImage.is-imgLeft .c-textAndImage__txtArea {
    margin-left: 72px;
  }
}

@media screen and (min-width: 768px) {
  .c-textAndImage.is-imgRight {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .c-textAndImage.is-imgRight .c-textAndImage__imgArea {
    max-width: 432px;
  }
  .c-textAndImage.is-imgRight .c-textAndImage__txtArea {
    margin-right: 72px;
  }
}

.c-col2 .c-leftBorderHeading02 {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .c-col2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .c-col2__col {
    width: calc((100% - 36px)/2);
  }
  .pg-business .innovate .c-col2__col {
    width: calc((100% - 36px)/3);
  }
  .is-narrow .c-col2__col {
    width: calc((100% - 12px)/2);
  }
  .c-col2.is-narrow {
    margin-top: 50px;
  }
  .c-col2 + * {
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  .c-col2__col {
    margin-top: 25px;
  }
  .c-col2 + * {
    margin-top: 25px;
  }
}

.c-innovation {
  position: relative;
  margin-top: 163px;
  padding: 98px 72px 72px;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(154, 174, 205, 0.1);
  box-shadow: 0px 0px 30px 0px rgba(154, 174, 205, 0.1);
}

.c-innovation--heading {
  position: absolute;
  top: -47px;
  right: 50%;
  -webkit-transform: translate(50%, 0);
  transform: translate(50%, 0);
}

.c-innovation--subheading {
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .c-innovation {
    margin-top: 50px;
    padding: 30px 25px 28px;
    -webkit-box-shadow: 0px 0px 15px 0px rgba(154, 174, 205, 0.1);
    box-shadow: 0px 0px 15px 0px rgba(154, 174, 205, 0.1);
  }
  .c-innovation--heading {
    width: 246.5px;
    top: -30px;
  }
  .c-innovation--heading img {
    width: 246.5px;
  }
  .c-innovation .c-col2__col:nth-child(n+2) {
    margin-top: 10px;
  }
}

.c-episode {
  position: relative;
  margin-top: 8.22vw;
}

.c-episode__image {
  position: absolute;
  z-index: 1;
  top: -48px;
  width: 46.69%;
}

.c-episode__image img {
  width: 100%;
  height: auto;
  border-radius:5px;
  box-shadow:2px 2px 10px -5px grey;
}

.c-episode__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: 93.38%;
  min-height: 23.6vw;
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
  box-shadow: 0px 0px 43px -6px rgba(120, 144, 173, 0.36);
}

.c-episode__inner {
  width: 100%;
}

.c-episode .WEcare {
  position: absolute;
  z-index: 2;
  top: 80px;
}
.c-episode--txtRight .WEcare {
  right: 6%;
}

.c-episode--txtRight .WEcare img {
  width: 100px;
}

.c-episode .script {
  position: absolute;
  z-index: 2;
  top: -47px;
}

.c-episode .year {
  font-size: 5rem;
  line-height: 1;
  font-weight: 300;
  color: #d3dbe6;
}

.c-episode .copy {
  margin-top: calc(21px - 0.365em);
  font-size: 2.2rem;
  line-height: 1.73;
  font-weight: bold;
}

.c-episode .text {
  margin-top: calc(60px - 0.5em);
  font-size: 1.5rem;
  line-height: 2;
}

.c-episode--txtRight .c-episode__image {
  left: 0;
  right: auto;
}

.c-episode--txtRight .c-episode__body {
  margin: 48px 0 0 6.67%;
  padding: 56px 6.67% 56px 46.69%;
}

.c-episode--txtRight .script {
  right: 5.95%;
}

.c-episode--txtLeft .c-episode__image {
  left: auto;
  right: 0;
}

.c-episode--txtLeft .c-episode__body {
  margin: 48px 6.67% 0 0;
  padding: 56px 46.69% 56px 6.67%;
}

.c-episode--txtLeft .script {
  left: 24%;
}

@media screen and (max-width: 767px) {
  .c-episode {
    margin-top: 30px;
  }
  .c-episode__image {
    position: static;
    width: 100%;
  }
  .c-episode__body {
    display: block;
    width: 100%;
    min-height: 0;
  }
  .c-episode .WEcare {
    position: absolute;
    z-index: 2;
    top: 8px;
  }
  .c-episode--txtRight .WEcare {
    right: 8%;
  }
  .c-episode--txtRight .WEcare img {
    width: 60px;
  }
  .c-episode .script {
    position: absolute;
    top: -35px;
    width: 41%;
  }
  .c-episode .script img {
    width: 100%;
    height: auto;
  }
  .c-episode .year {
    font-size: 3.5rem;
  }
  .c-episode .copy {
    margin-top: calc(13px - 0.25em);
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .c-episode .text {
    margin-top: calc(35px - 0.4em);
    font-size: 1.3rem;
    line-height: 1.8;
  }
  .c-episode--txtRight .c-episode__body, .c-episode--txtLeft .c-episode__body {
    margin: 0;
    padding: 26px;
  }
  .c-episode--txtRight .script, .c-episode--txtLeft .script {
    right: auto;
    left: 50%;
  }
}

.c-banner {
  margin-top: 73px;
  text-align: center;
}

.c-banner__title {
  margin-bottom: 26px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.89;
}

.c-banner__img {
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

[data-whatintent="mouse"] .c-banner__img:hover {
  opacity: 0.7;
}

@media screen and (max-width: 767px) {
  .c-banner {
    margin-top: 43px;
  }
  .c-banner__title {
    margin-bottom: 18px;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.5;
  }
  .c-banner__img img {
    width: 100%;
  }
  [data-whatintent="mouse"] .c-banner__img:hover {
    opacity: 0.7;
  }
}

/**
 * Project
 */
.p-textHeading {
  background-color: #fff;
  padding: 35px 0 0;
}

.p-textHeading .en {
  display: inline-block;
  color: #004fa3;
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 1.9rem;
  text-transform: uppercase;
}

@media all and (-ms-high-contrast: none) {
  .p-textHeading .en {
    background: none;
  }
}

.p-textHeading .ja {
  display: block;
  margin-top: 24px;
  font-size: 4.5rem;
  line-height: 0.76;
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .p-textHeading {
    border-bottom: 1px solid #ececec;
    padding: 45px 0 25px;
  }
  .p-textHeading .en {
    font-size: 1.3rem;
  }
  .p-textHeading .ja {
    margin-top: 10px;
    font-size: 3rem;
    line-height: 0.89;
  }
}

.p-imageHeading {
  padding: calc(77px + 150px) 0 150px;
  background: url(http://placehold.jp/bfbfbf/ffffff/400x255.png?text=image) center/cover no-repeat;
  color: #fff;
}

.p-imageHeading .en {
  font-size: 1.8rem;
  text-transform: uppercase;
}

.p-imageHeading .ja {
  display: block;
  margin-top: 15px;
  font-size: 4.5rem;
  line-height: 0.76;
}

.p-imageHeading.is-textBk {
  color: #000;
}

.p-imageHeading.is-textBk .ja {
  font-weight: normal;
}

@media screen and (max-width: 767px) {
  .p-imageHeading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 56px 0;
    height: 65vw;
  }
  .p-imageHeading h1 {
    margin-top: 115px;
  }
  .p-imageHeading.is-textBk {
    padding: 56px 0 0;
  }
  .p-imageHeading .en {
    font-size: 1.3rem;
  }
  .p-imageHeading .ja {
    margin-top: calc(10px - 0.135em);
    font-size: 3rem;
    line-height: 1.1;
    font-weight: normal;
  }
  .p-imageHeading .supple {
    font-size: 2rem;
  }
}

.p-breadcrumb {
  padding: 21px 0 10px;
}

.p-imageHeading + .p-breadcrumb {
  padding-top: 40px;
}

.p-breadcrumb ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  font-size: 1.2rem;
  letter-spacing: 0.25em;
}

.p-breadcrumb li + li {
  margin-left: 0.5em;
}

.p-breadcrumb li a[href] {
  display: inline-block;
  color: #b2b2b2;
  text-decoration: none;
}

[data-whatintent="mouse"] .p-breadcrumb li a[href]:hover {
  text-decoration: underline;
}

.p-breadcrumb li::after {
  margin-left: 0.5em;
  content: '/';
  color: #b2b2b2;
}

.p-breadcrumb li:last-of-type::after {
  content: '';
}

@media screen and (max-width: 767px) {
  .p-breadcrumb {
    display: none;
  }
}

.p-backArea {
  padding: 90px 0 0;
  text-align: center;
}

.p-backArea .c-button {
  display: inline-block;
  width: auto;
  min-width: 213px;
  padding: 0 0 10px 35px;
}

@media screen and (max-width: 767px) {
  .p-backArea {
    padding: 16px 0 0;
  }
  .p-backArea .c-button {
    min-width: 140px;
    padding: 0 0 6px 30px;
  }
}

.p-pager {
  margin-top: 70px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.p-pager ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.p-pager li {
  padding: 0 34px;
  border-left: 1px solid #bababa;
}

.p-pager li:last-of-type {
  border-right: 1px solid #bababa;
}

.p-pager li a {
  color: #9e9e9e;
  text-decoration: none;
  font-size: 1.8rem;
  line-height: 2.26;
  font-weight: bold;
}

.p-pager li a:not([href]) {
  color: #0050a3;
}

[data-whatintent="mouse"] .p-pager li a[href]:hover {
  text-decoration: underline;
}

.p-pager .p-pager__prev a,
.p-pager .p-pager__next a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  margin-top: 3px;
  width: 25px;
  height: 25px;
}

[data-whatintent="mouse"] .p-pager .p-pager__prev a:hover, [data-whatintent="mouse"]
.p-pager .p-pager__next a:hover {
  opacity: 0.7;
}

.p-pager .p-pager__prev a::before,
.p-pager .p-pager__next a::before {
  content: '';
  border-top: 2px solid #004fa3;
  width: 8px;
  height: 8px;
}

.p-pager .p-pager__prev a {
  margin-right: 22px;
}

.p-pager .p-pager__prev a::before {
  border-left: 2px solid #004fa3;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.p-pager .p-pager__next a {
  margin-left: 22px;
}

.p-pager .p-pager__next a::before {
  border-right: 2px solid #004fa3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
  .p-pager {
    margin-top: 66px;
  }
  .p-pager li {
    padding: 0 16px;
  }
  .p-pager li a {
    font-size: 1.5rem;
    line-height: 1;
  }
  .p-pager .p-pager__prev a,
  .p-pager .p-pager__next a {
    margin-top: 0;
  }
  .p-pager .p-pager__prev a::before,
  .p-pager .p-pager__next a::before {
    width: 5px;
    height: 5px;
  }
  .p-pager .p-pager__prev a {
    margin-right: 10px;
  }
  .p-pager .p-pager__next a {
    margin-left: 10px;
  }
}

.p-pageTop {
  z-index: 100;
  opacity: 1;
  position: fixed;
  bottom: 25px;
  right: 6.67%;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.p-pageTop[aria-hidden="true"] {
  opacity: 0;
}

.p-pageTop.-onFooter {
  position: absolute;
  bottom: auto;
  top: -23px;
  right: 6.67%;
}

.p-pageTop a {
  display: block;
  position: relative;
  border: 2px solid #004fa3;
  border-radius: 50%;
  width: 45px;
  height: 45px;
  background-color: #fff;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}

.p-pageTop a::before {
  content: '';
  position: absolute;
  right: calc(50% + 1px);
  top: calc(50% - 5px);
  border-top: 2px solid #004fa3;
  border-right: 2px solid #004fa3;
  width: 8px;
  height: 8px;
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: border 0.3s;
  transition: border 0.3s;
}

[data-whatintent="mouse"] .p-pageTop a:hover {
  background-color: #004fa3;
}

[data-whatintent="mouse"] .p-pageTop a:hover::before {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.p-form {
  margin-top: 65px;
}

.p-form__submitArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 86px;
}

.p-form__submitArea > * + * {
  margin-left: 52px;
}

.p-form--confirm .p-form__submitArea {
  margin-top: 102px;
}

.p-form--confirm .c-input {
  padding-top: calc(30px - 0.4em);
  padding-bottom: calc(30px - 0.4em);
}

.p-form--confirm .c-input__heading {
  padding-top: 0;
}

@media screen and (max-width: 767px) {
  .p-form {
    margin-top: 50px;
  }
  .p-form__submitArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-top: 48px;
  }
  .p-form__submitArea > * + * {
    margin: 0;
  }
  .p-form__submitArea > *:first-child {
    margin-top: 20px;
  }
  .p-form--confirm .p-form__submitArea {
    margin-top: 55px;
  }
  .p-form--confirm .c-input {
    padding-top: calc(23px - 0.5em);
    padding-bottom: calc(23px - 0.5em);
  }
  .p-form--confirm .c-input__heading {
    padding-top: 0;
  }
  .p-form--confirm .c-input__body {
    margin-top: calc(12px - 0.5em);
  }
}

.p-contactTelArea {
  margin-top: 100px;
  padding: 80px 0;
  background-color: #f1f3f6;
}

.p-contactTelArea__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: calc(32px - 0.6em) 6.67%;
  font-size: 2.2rem;
  line-height: 2.32;
  font-weight: bold;
  color: #fff;
  background-color: #0086d1;
}

.p-contactTelArea__head img {
  margin-right: 20px;
}

.p-contactTelArea__body {
  position: relative;
  padding: 55px 6.67% 42px;
  background-color: #fff;
}

.p-contactTelArea__body .info {
  margin-top: calc(46px - 0.69em);
  text-align: center;
  font-size: 1.6rem;
  line-height: 2.38;
}

.p-contactTelArea__body::before {
  position: absolute;
  content: '';
  top: 15%;
  left: 50%;
  background-color: #e1e1e1;
  width: 1px;
  height: 87px;
}

.p-contactTelArea__tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-contactTelArea__tel dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 46.15%;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.p-contactTelArea__tel dl:nth-of-type(even) {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.p-contactTelArea__tel dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 140px;
  margin-right: 20px;
  padding: calc(14px - 0.69em);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 1.6rem;
  line-height: 2.38;
  font-weight: bold;
  color: #fff;
  background-color: #4b5859;
}

.p-contactTelArea__tel dd {
  font-size: 3rem;
  line-height: 0.86;
}

.p-contactTelArea__tel dd a {
  text-decoration: none;
  color: #000;
}

@media screen and (max-width: 767px) {
  .p-contactTelArea {
    margin-top: 56px;
    padding: 45px 0;
  }
  .p-contactTelArea__head {
    padding: calc(14px - 0.41em) 7.69%;
    font-size: 1.4rem;
    line-height: 1.82;
  }
  .p-contactTelArea__head img {
    margin-right: 10px;
    width: 16px;
    height: auto;
  }
  .p-contactTelArea__body {
    padding: 26px 7.69% 28px;
  }
  .p-contactTelArea__body .info {
    margin-top: calc(21px - 0.365em);
    font-size: 1.1rem;
    line-height: 1.73;
  }
  .p-contactTelArea__body::before {
    content: none;
  }
  .p-contactTelArea__tel {
    display: block;
  }
  .p-contactTelArea__tel dl {
    width: 100%;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .p-contactTelArea__tel dl + dl {
    margin-top: 16px;
    border-top: 1px solid #e0e0e0;
    padding-top: 15px;
  }
  .p-contactTelArea__tel dl:nth-of-type(even) {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .p-contactTelArea__tel dt {
    width: 90px;
    margin-right: 15px;
    padding: calc(6px - 0.61em);
    font-size: 1.1rem;
    line-height: 2.22;
  }
  .p-contactTelArea__tel dd {
    font-size: 2.0rem;
    line-height: 0.96;
  }
}

.p-flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
  width: 86.57%;
  background-color: #f1f3f6;
}

.p-flow__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  margin-right: 18px;
  border: 2px solid #0086d1;
  border-right: none;
  padding: calc(20px - 0.25em);
  width: 216px;
  font-size: 1.8rem;
  line-height: 1.5;
  background-color: #fff;
}

.p-flow__item::after {
  content: '';
  position: absolute;
  top: -3px;
  right: -20px;
  width: 22px;
  height: calc(100% + 6px);
  background: url(../images/contact/flow_bg01.png) center/contain no-repeat;
}

.p-flow__item--current {
  background: -webkit-gradient(linear, left top, right top, from(#004fa3), to(#0086d1));
  background: linear-gradient(to right, #004fa3, #0086d1);
  color: #fff;
}

.p-flow__item--current:not(:last-of-type)::after {
  background-image: url(../images/contact/flow_bg02.png);
}

.p-flow__item:last-of-type {
  margin-right: 0;
  border-right: 2px solid #0086d1;
}

.p-flow__item:last-of-type::after {
  content: none;
}

.p-flow__dot {
  border-top: 2px dotted #0086d1;
  width: 100px;
  height: 0;
}

@media screen and (max-width: 767px) {
  .p-flow {
    width: 100%;
  }
  .p-flow__item {
    margin-right: 10px;
    padding: calc(5px - 0.145em) 5px;
    width: 83px;
    height: 51px;
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.29;
  }
  .p-flow__item::after {
    top: -2px;
    right: -8px;
    width: 10px;
    height: calc(100% + 4px);
    background-image: url(../images/contact/flow_bg01_sp.png);
  }
  .p-flow__item--current:not(:last-of-type)::after {
    background-image: url(../images/contact/flow_bg02_sp.png);
  }
  .p-flow__dot {
    width: calc(((100% - ((83px * 3) + (10px * 2))) / 2) - 18px);
  }
}

/**
 * Other
 */
/**
 * Utility
 */
@media screen and (max-width: 767px) {
  .u-pcOnly {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .u-spOnly {
    display: none !important;
  }
}

.u-tar {
  text-align: right;
}

.u-tac {
  text-align: center;
}

.u-center {
  margin-right: auto;
  margin-left: auto;
}

.u-fadeIn {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}

.u-fadeIn[aria-hidden="true"] {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

/**
 * keyframes
 */
body.compensate-for-scrollbar {
  overflow: hidden;
}

.fancybox-active {
  height: auto;
}

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}

.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}

.fancybox-container * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  -webkit-transition-duration: inherit;
  transition-duration: inherit;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: .9;
  -webkit-transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  position: absolute;
  -webkit-transition: opacity .25s ease, visibility 0s ease .25s;
  transition: opacity .25s ease, visibility 0s ease .25s;
  visibility: hidden;
  z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  -webkit-transition: opacity .25s ease 0s, visibility 0s ease 0s;
  transition: opacity .25s ease 0s, visibility 0s ease 0s;
  visibility: visible;
}

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-toolbar {
  right: 0;
  top: 0;
}

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  /* Using without prefix would break IE11 */
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}

.fancybox-slide::before {
  content: '';
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--html {
  padding: 6px;
}

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
  -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-transform-origin: top left;
  transform-origin: top left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-container [data-selectable='true'] {
  cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%;
}

.fancybox-slide--video .fancybox-content {
  background: #000;
}

.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
}

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0;
}

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}

/* Buttons */
.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  -webkit-transition: color .2s;
  transition: color .2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:hover {
  color: #fff;
}

.fancybox-button:focus {
  outline: none;
}

.fancybox-button.fancybox-focus {
  outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none;
}

/* Fix IE11 */
.fancybox-button div {
  height: 100%;
}

.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
  display: none;
}

.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0;
  transform-origin: 0;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
  z-index: 99998;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: .8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401;
}

.fancybox-close-small:hover {
  color: #fff;
  opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none;
}

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px;
}

.fancybox-navigation .fancybox-button div {
  padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  left: env(safe-area-inset-left);
  padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
  right: env(safe-area-inset-right);
}

/* Caption */
.fancybox-caption {
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.85)), color-stop(50%, rgba(0, 0, 0, 0.3)), color-stop(65%, rgba(0, 0, 0, 0.15)), color-stop(75.5%, rgba(0, 0, 0, 0.075)), color-stop(82.85%, rgba(0, 0, 0, 0.037)), color-stop(88%, rgba(0, 0, 0, 0.019)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 75px 44px 25px 44px;
  pointer-events: none;
  right: 0;
  text-align: center;
  z-index: 99996;
}

@supports (padding: max(0px)) {
  .fancybox-caption {
    padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
  }
}

.fancybox-caption--separate {
  margin-top: -50px;
}

.fancybox-caption__body {
  max-height: 50vh;
  overflow: auto;
  pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */
.fancybox-loading {
  -webkit-animation: fancybox-rotate 1s linear infinite;
  animation: fancybox-rotate 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: .7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes fancybox-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* Transition effects */
.fancybox-animated {
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  -webkit-transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: scale3d(1.5, 1.5, 1.5);
  transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
  transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: rotate(-360deg);
  transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  -webkit-transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  -webkit-transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  -webkit-transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  -webkit-transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px;
  }
  .fancybox-slide--image {
    padding: 6px 0;
  }
  .fancybox-close-small {
    right: -6px;
  }
  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px;
  }
  .fancybox-caption {
    padding-left: 12px;
    padding-right: 12px;
  }
  @supports (padding: max(0px)) {
    .fancybox-caption {
      padding-left: max(12px, env(safe-area-inset-left));
      padding-right: max(12px, env(safe-area-inset-right));
    }
  }
}

/* Share */
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px 0;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  -webkit-transition: all .2s;
  transition: all .2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}

/* Thumbs */
.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}

.fancybox-thumbs__list a::before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: '';
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
  opacity: .5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
  .fancybox-thumbs {
    width: 110px;
  }
  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }
  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px);
  }
}

/**
 * Swiper 6.8.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2021 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: July 22, 2021
 */
@font-face {
  font-family: 'swiper-icons';
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}

:root {
  --swiper-theme-color: #007aff;
}

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-container-pointer-events {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.swiper-container-pointer-events.swiper-container-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}

.swiper-slide {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

/* 3D Effects */
.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: 'prev';
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: 'next';
}

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000;
}

.swiper-button-lock {
  display: none;
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms opacity;
  transition: 300ms opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2;
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 8px;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: 200ms top, 200ms -webkit-transform;
  transition: 200ms top, 200ms -webkit-transform;
  transition: 200ms transform, 200ms top;
  transition: 200ms transform, 200ms top, 200ms -webkit-transform;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 200ms left, 200ms -webkit-transform;
  transition: 200ms left, 200ms -webkit-transform;
  transition: 200ms transform, 200ms left;
  transition: 200ms transform, 200ms left, 200ms -webkit-transform;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 200ms right, 200ms -webkit-transform;
  transition: 200ms right, 200ms -webkit-transform;
  transition: 200ms transform, 200ms right;
  transition: 200ms transform, 200ms right, 200ms -webkit-transform;
}

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-white {
  --swiper-pagination-color: #ffffff;
}

.swiper-pagination-black {
  --swiper-pagination-color: #000000;
}

.swiper-pagination-lock {
  display: none;
}

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
  animation: swiper-preloader-spin 1s infinite linear;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube {
  overflow: visible;
}

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-container-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-filter: blur(50px);
  filter: blur(50px);
}

.swiper-container-flip {
  overflow: visible;
}

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.sdgs-ttl-line {
  color: #109578;
  text-align: center;
  position: relative;
  margin-bottom: 70px;
  margin-top: 80px;
  display: block;
}

.sdgs-ttl-line::before {
  content: "";
  display: inline-block;
  width: 20%;
  height: 3px;
  background: #109578;
  position: absolute;
  left: 50%;
  bottom: -40px;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
  margin: auto;
  z-index: 1;
}

.sdgs-ttl-line.lv2 {
  font-size: 250%;
  margin-top: 50px;
  margin-bottom: 120px;
}

.sdgs-ttl-line.lv2::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 2px;
  background: #e5e5e5;
  position: absolute;
  z-index: 0;
  left: 50%;
  bottom: -39px;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
  margin: auto;
}

.sdgs-lead {
  width: 100%;
  max-width: 926px;
  margin: 0 auto;
  padding-bottom: 80px;
  border-bottom: 1px solid #c9c9c9;
}

.sdgs-lead .sdgs-ttl-line {
  margin-bottom: 120px;
}

.sdgs-lead-pic-01 {
  max-width: 770px;
  display: block;
  margin: 60px auto;
}

.sdgs-lead-pic-02 {
  margin-top: 40px;
}

.sdgs-pu-wrap {
  background: #FFFFFF;
  border-left: 5px solid #ff8b00;
  padding: 60px 50px;
  box-shadow: 0px 0px 16px -6px rgba(0, 0, 0, 0.6);
  margin-top: 90px;
}

.sdgs-pu {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
}

.sdgs-pu:last-child {
  margin-bottom: 0px;
}

.sdgs-pu.reverse {
  flex-flow: row-reverse wrap;
}

.sdgs-pu h3 {
  font-size: 28px;
  font-weight: 300;
  color: #000000;
  font-style: normal;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid #e5e5e5;
}

.sdgs-pu h3 .en {
  font-size: 20px;
  font-weight: 600;
  color: #ff8b00;
  display: block;
  margin-bottom: 15px;
}

.sdgs-pu p {
  margin-bottom: 20px;
}

.sdgs-pu .sdgs-pu-contents {
  width: 60%;
}

.sdgs-pu .sdgs-pu-contents.w100 {
  width: 100%;
}
.sdgs-pu .sdgs-pu-contents.w100 .sdgs-pic-05{
    max-width: 600px;
    display: block;
    margin: 0 auto;
    margin-top: 15px;
}
.sdgs-pu .sdgs-pu-img {
  width: 35%;
}

.sdgs-tbl {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  margin-bottom: 40px;
	  box-sizing: border-box;


}

.pg-sdgs .sdgshyou01 td {
  padding: 10px;
}
.pg-sdgs td.tbg {
  background-color:rgb(244, 244, 244);
}

.sdgs-tbl td {
  padding: 30px;
  border-color: rgb(226, 226, 226);
}
.sdgs-tbl td.bl-n {
  border-left: none;
}
.sdgs-tbl td.br-n {
  border-right: none;
}
.sdgs-tbl td.pc_none {
  display: none;
}
.style-simple table:not(.recaptchatable) tr:last-child td {
  border-bottom: 1px;
}

.sdgs-tbl td:nth-child(1) {
  width: calc(100% - 320px);
}

.sdgs-tbl td h3 {
  font-size: 22px;
  font-weight: 500;
  color: #000000;
  font-style: normal;
}

.sdgs-tbl td ul {
  margin-left: 1em;
}

.sdgs-tbl td ul li {
  font-size: 15px;
  list-style: disc;
  margin-top: 10px;
}

.sdgs-tbl .icon-wrap {
  flex-wrap: wrap;
  width: 320px;
}

.sdgs-tbl .icon-wrap .icon {
  width: 30.5%;
  padding: 1%;
  display: inline-block;
}

.sdgs-tbl .icon-wrap .icon img {
  margin: 0;
  padding: 0;
}

/***/
.c-column-access{
	justify-content: center;
}

@media only screen and (max-width: 960px) {
  .bg-gray {
    padding-bottom: 70px;
  }
  p {
    font-size: 15px!important;
  }
  h2 {
    font-size: 40px;
  }
  .sdgs-ttl-line.lv2 {
    font-size: 210%;
    margin-bottom: 80px
  }
  .sdgs-lead {
    padding-bottom: 60px;
  }
  .sdgs-lead-pic-01 {
    margin: 50px auto;
  }
  .sdgs-pu-wrap {
    margin-top: 70px;
    padding: 30px;
  }
  .sdgs-pu {
    margin-bottom: 60px;
  }
  .sdgs-pu.reverse {
    flex-flow: column wrap;
  }
  .sdgs-pu h3 {
    font-size: 24px;
  }
  .sdgs-pu h3 .en {
    font-size: 16px;
  }
  .sdgs-pu .sdgs-pu-contents {
    width: 100%
  }
  .sdgs-pu .sdgs-pu-img {
    width: 100%;
  }
  .sdgs-tbl {
    margin-bottom: 30px;
  }
  .sdgs-tbl td {
    padding: 20px 15px;
  }
  .sdgs-tbl td:nth-child(1) {
    width: calc(100% - 220px);
  }
  .sdgs-tbl td h3 {
    font-size: 20px;
  }
  .sdgs-tbl td ul li {
    font-size: 14px;
  }
  .sdgs-tbl .icon-wrap {
    width: 220px;
  }
}

@media only screen and (max-width: 767px) {
  .bg-gray {
    padding-bottom: 40px;
  }
  h2 {
    font-size: 30px;
    line-height: 1.5;
  }
  .sdgs-tbl td.bl-n {
    border-left: none;
    border-right: none;
  }
  .sdgs-tbl td.br-n {
    border-right: none;
    border-left: none;
  }
  .sdgs-ttl-line {
    margin-top: 10px;
  }
  .sdgs-ttl-line.lv2 {
    font-size: 170%;
    line-height: 1.5;
  }
  .sdgs-lead {
    padding-bottom: 30px;
  }
  .sdgs-lead .sdgs-ttl-line {
    margin-bottom: 80px;
  }
  .sdgs-lead-pic-01 {
    margin: 30px auto;
  }
  .sdgs-pu-wrap {
    margin-top: 40px;
    padding: 30px 15px;
  }
  .sdgs-pu {
    margin-bottom: 50px;
  }
  .sdgs-pu h3 {
    font-size: 22px;
    line-height: 1.5;
  }
  .sdgs-pu h3 .en {
    font-size: 15px;
  }
  .sdgs-tbl {
    margin-bottom: 50px;
    display: block;
    /*overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;*/
  }
  .sdgs-tbl td h3 {
    font-size: 18px;
  }
.sdgs-tbl td.br {
  border-right: 1px solid rgba(0, 0, 0, 0)!important;

}
.sdgs-tbl td.bb {
  border-bottom: none!important;
}	
.style-simple table:not(.recaptchatable) th, .style-simple table td {
    border-width: 1px 0px 0px 0;
}

  .sdgs-tbl td {
	  display: block;
     width: 100%;
	      box-sizing: border-box;
}
  .sdgs-tbl td:nth-child(1) {
    width: 100%;
  }
  .sdgs-tbl .icon-wrap {
    width: 100%;
  }
.sdgs-tbl .icon-wrap .icon {
  width: 35%;
  padding: 1%;
  display: inline-block;
}
.sdgs-tbl td.pc_none {
  display: block;
}	
}
