@font-face {
  font-family: "font-kpmg-bold";
  src: url("../font/kpmg-Bold/KPMG-Bold.woff2") format("woff2"),url("../font/kpmg-Bold/KPMG-Bold.woff") format("woff"),url("../font/kpmg-Bold/KPMG-Bold.ttf") format("truetype")
}

/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*,::before,::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0,0,0,0)
}

body {
  margin: 0
}

main {
  display: block
}

p,table,blockquote,address,pre,iframe,form,figure,dl {
  margin: 0
}

h1,h2,h3,h4,h5,h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0
}

ul,ol {
  margin: 0;
  padding: 0;
  list-style: none
}

dt {
  font-weight: bold
}

dd {
  margin-left: 0
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit
}

pre {
  font-family: monospace,monospace;
  font-size: inherit
}

address {
  font-style: inherit
}

a {
  background-color: rgba(0,0,0,0);
  text-decoration: none;
  color: inherit
}

abbr[title] {
  text-decoration: underline dotted
}

b,strong {
  font-weight: bolder
}

code,kbd,samp {
  font-family: monospace,monospace;
  font-size: inherit
}

small {
  font-size: 80%
}

sub,sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -0.25em
}

sup {
  top: -0.5em
}

svg,img,embed,object,iframe {
  vertical-align: bottom
}

button,input,optgroup,select,textarea {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: rgba(0,0,0,0);
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit
}

button,[type=button],[type=reset],[type=submit] {
  cursor: pointer
}

button:disabled,[type=button]:disabled,[type=reset]:disabled,[type=submit]:disabled {
  cursor: default
}

:-moz-focusring {
  outline: auto
}

select:disabled {
  opacity: inherit
}

option {
  padding: 0
}

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0
}

legend {
  padding: 0
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

[type=number] {
  -moz-appearance: textfield
}

label[for] {
  cursor: pointer
}

details {
  display: block
}

summary {
  display: list-item
}

[contenteditable]:focus {
  outline: auto
}

table {
  border-color: inherit;
  border-collapse: collapse
}

caption {
  text-align: left
}

td,th {
  vertical-align: top;
  padding: 0
}

th {
  text-align: left;
  font-weight: bold
}

[data-simplebar] {
  position: relative;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  align-items: flex-start
}

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit
}

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0
}

.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch
}

.simplebar-content-wrapper {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%;
  width: auto;
  max-width: 100%;
  max-height: 100%;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar {
  width: 0;
  height: 0
}

.simplebar-content:before,.simplebar-content:after {
  content: " ";
  display: table
}

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none
}

.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: 100%;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  flex-grow: inherit;
  flex-shrink: 0;
  flex-basis: 0
}

.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1
}

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  /* pointer-events: none; */
  overflow: hidden
}

[data-simplebar].simplebar-dragging .simplebar-content {
  pointer-events: none;
  user-select: none;
  -webkit-user-select: none
}

[data-simplebar].simplebar-dragging .simplebar-track {
  pointer-events: all
}

.simplebar-scrollbar {
  position: absolute;
  left: 0;
  right: 0;
  min-height: 10px
}

.simplebar-scrollbar:before {
  position: absolute;
  content: "";
  background: #000;
  border-radius: 7px;
  left: 2px;
  right: 2px;
  opacity: 0;
  transition: opacity .2s linear
}

.simplebar-scrollbar.simplebar-visible:before {
  opacity: .5;
  transition: opacity 0s linear
}

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px
}

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 11px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 2px;
  right: 2px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 2px;
  height: 7px;
  min-height: 0;
  min-width: 10px;
  width: auto
}

[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0
}

.hs-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll
}

.simplebar-hide-scrollbar {
  position: fixed;
  left: 0;
  visibility: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none
}

html {
  font-family: "Noto Sans JP",sans-serif;
  font-weight: 400;
  font-size: 1rem;
  color: #333
}

body {
  position: relative;
  -webkit-font-smoothing: antialiased
}

.container {
  padding: 3.75rem 0 6.25rem;
  overflow: hidden
}

@media(max-width: 767.98px) {
  .container {
      padding:1.875rem 0 3.125rem
  }
}

main {
  max-width: 1200px;
  margin: 0 auto
}

@media(min-width: 767.98px)and (max-width: 1200px) {
  main {
      padding:0 .9375rem
  }
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: cover
}

@media(min-width: 767.98px) {
  .sm {
      display:none !important
  }
}

@media(max-width: 767.98px) {
  .md {
      display:none !important
  }
}

.l-header {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 5rem;
  padding: 0 min(4.39238653vw,60px);
  background-color: #fff;
  box-shadow: 0 5px 10px rgba(0,0,0,.1);
  z-index: 1000;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(min-width: 767.98px)and (max-width: 1023.98px) {
  .l-header {
      padding:0 .625rem 0 1.25rem
  }
}

@media(max-width: 767.98px) {
  .l-header {
      position:fixed;
      align-items: center;
      justify-content: space-between;
      height: 2.875rem;
      padding: 0 .9375rem
  }
}

.l-header.sticky {
  position: sticky
}

.l-header.is-open {
  background-color: #f7f7f7;
  box-shadow: none;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_logo {
  height: fit-content;
  margin: auto 0
}

.l-header_logo a img {
  width: 6.875rem;
  height: 2.75rem
}

@media(max-width: 767.98px) {
  .l-header_logo a img {
      width:4.75rem;
      height: 1.875rem
  }
}

.l-header_nav {
  display: flex;
  gap: 0 2.5622254758vw;
  margin-left: auto
}

@media(min-width: 767.98px)and (max-width: 1023.98px) {
  .l-header_nav {
      gap:0 .625rem
  }
}

.l-header_navNormalBlockList {
  display: flex;
  gap: 0 min(1.8301610542vw,25px);
  height: 100%
}

@media(min-width: 767.98px)and (max-width: 1023.98px) {
  .l-header_navNormalBlockList {
      gap:0 .3125rem
  }
}

.l-header_navNormalBlockListItem>p {
  position: relative;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 0 .375rem;
  width: 100%;
  height: 100%;
  font-weight: 700;
  font-size: 1rem;
  cursor: pointer
}

.l-header_navNormalBlockListItem>p::after {
  display: block;
  content: "";
  width: .5625rem;
  height: .25rem;
  background-image: url("../img/common/ico_header_nav_arrow-black.svg");
  background-repeat: no-repeat;
  background-size: contain
}

.l-header_navNormalBlockListItem>p.is-active {
  color: #1e49e2
}

.l-header_navNormalBlockListItem>p.is-active::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: .1875rem;
  background-color: #1e49e2
}

.l-header_navNormalBlockListItem>p.is-active::after {
  background-image: url("../img/common/ico_header_nav_arrow-blue.svg")
}

.l-header_navBtnBlockList {
  display: flex;
  gap: 0 min(.7320644217vw,10px);
  height: 100%
}

@media(min-width: 767.98px)and (max-width: 1023.98px) {
  .l-header_navBtnBlockList {
      gap:0 .3125rem
  }
}

.l-header_navBtnBlockListItem {
  flex-shrink: 0
}

.l-header_navBtnBlockListItemBtn {
  display: flex;
  align-items: center;
  height: 100%
}

.l-header_navBtnBlockListItemBtn.is-active .c-button_purple {
  color: #7213ea;
  background-color: #fff
}

.l-header_navBtnBlockListItemBtn.is-active .c-button_purple::after {
  background-image: url("../img/common/ico_header_nav_arrow-purple.svg")
}

.l-header_navBtnBlockListItemBtn.is-active .c-button_cobaltBlue {
  color: #1e49e2;
  background-color: #fff
}

.l-header_navBtnBlockListItemBtn.is-active .c-button_cobaltBlue::after {
  background-image: url("../img/common/ico_header_nav_arrow-cobaltBlue.svg")
}

.l-header_navBtnBlockListItemBtn>span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 .375rem;
  width: min(10.980966325vw,150px);
  min-width: 120px;
  height: 2.875rem;
  font-weight: 700
}

.l-header_navBtnBlockListItemBtn>span::after {
  display: block;
  content: "";
  width: .5625rem;
  height: .25rem;
  background-image: url("../img/common/ico_header_nav_arrow-white.svg");
  background-repeat: no-repeat;
  background-size: contain
}

.l-header_megaMenu {
  position: absolute;
  top: 5rem;
  left: 0;
  width: 100%;
  background-color: #f7f7f7;
  box-shadow: 0 5px 10px rgba(0,0,0,.1);
  opacity: 0;
  visibility: hidden;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_megaMenu.is-active {
  opacity: 1;
  visibility: visible;
  z-index: 1000;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_megaMenuInner {
  padding: min(2.9282576867vw,40px) 0 min(2.9282576867vw,40px) min(13.3967789165vw,183px)
}

.l-header_megaMenuInner-full {
  display: flex;
  flex-direction: column;
  gap: min(2.9282576867vw,40px) 0
}

.l-header_megaMenuInner-half {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  gap: 2.5rem
}

.l-header_megaMenuInner-halfBox {
  width: 30rem;
  max-width: 480px
}

.l-header_megaMenuInner-halfBox .l-header_megaMenuLower {
  margin-top: 2.5rem
}

.l-header_megaMenuInner .l-header_megaMenuUpper {
  width: fit-content;
  font-size: 1.125rem
}

.l-header_megaMenuInner a.l-header_megaMenuUpper {
  gap: 0 .9375rem;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_megaMenuInner a.l-header_megaMenuUpper::after {
  background-image: url("../img/common/ico_megaMenu_arrow-black.svg")
}

@media(hover: hover)and (pointer: fine) {
  .l-header_megaMenuInner a.l-header_megaMenuUpper:hover::after {
      width:5.5rem
  }
}

.l-header_megaMenuInner .l-header_megaMenuLower {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5625rem 1.25rem
}

.l-header_megaMenuInner .l-header_megaMenuLowerItem {
  width: 14.375rem;
  max-width: 230px
}

.l-header_megaMenuInner .l-header_megaMenuLowerItem>a {
  display: block;
  position: relative;
  height: 2.3125rem;
  font-size: .875rem;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .l-header_megaMenuInner .l-header_megaMenuLowerItem>a:hover {
      font-weight:700
  }

  .l-header_megaMenuInner .l-header_megaMenuLowerItem>a:hover::after {
      width: 14.1875rem
  }
}

.l-header_megaMenuInner .l-header_megaMenuLowerItem>a::after {
  position: absolute;
  left: 0;
  bottom: .125rem;
  content: "";
  width: 11.0625rem;
  height: .5rem;
  background-image: url("../img/common/ico_megaMenu_arrow-black.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position-x: right;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_megaMenuInner .l-header_megaMenuBottom {
  display: flex;
  gap: 0 1.25rem
}

.l-header_megaMenuInner .l-header_megaMenuBottomBtn {
  width: 15.625rem;
  height: 3.125rem
}

.l-header_megaMenuInner .l-header_megaMenuBottomBtn>a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 .625rem;
  width: 100%;
  height: 100%;
  font-size: .875rem;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .l-header_megaMenuInner .l-header_megaMenuBottomBtn>a:hover {
      font-weight:700
  }
}

.l-header_hamburgerButton {
  position: relative;
  width: 1.875rem;
  height: 1.25rem
}

.l-header_hamburgerButton.is-open span {
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_hamburgerButton.is-open span:nth-of-type(1) {
  top: .5625rem;
  transform: rotate(-135deg)
}

.l-header_hamburgerButton.is-open span:nth-of-type(2) {
  width: 0
}

.l-header_hamburgerButton.is-open span:nth-of-type(3) {
  top: .5625rem;
  transform: rotate(135deg)
}

.l-header_hamburgerButton span {
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  background-color: #1e49e2;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_hamburgerButton span:nth-of-type(1) {
  top: 0
}

.l-header_hamburgerButton span:nth-of-type(2) {
  top: .5625rem
}

.l-header_hamburgerButton span:nth-of-type(3) {
  bottom: 0
}

.l-header_globalNav {
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #f7f7f7;
  overflow: hidden auto;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: -1;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_globalNav.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 990;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_globalNavContainer {
  display: flex;
  flex-direction: column;
  padding: 4.875rem 8vw 2.5rem;
  gap: 1.875rem 0
}

.l-header_globalNavContainer .l-header_normalBlockList {
  display: flex;
  flex-direction: column
}

.l-header_globalNavContainer .l-header_normalBlockListItem {
  margin-bottom: .75rem
}

.l-header_globalNavContainer .l-header_normalBlockListItem:last-of-type {
  margin-bottom: 0
}

.l-header_globalNavContainer .l-header_normalBlockListItem>p {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0 0 .625rem;
  border-bottom: 1px solid #e5e5e5;
  font-size: .875rem;
  font-weight: 700
}

.l-header_globalNavContainer .l-header_normalBlockListItem>p .icon {
  position: relative;
  display: block;
  width: .75rem;
  height: .75rem
}

.l-header_globalNavContainer .l-header_normalBlockListItem>p .icon::before,.l-header_globalNavContainer .l-header_normalBlockListItem>p .icon::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  display: block;
  content: "";
  width: .75rem;
  height: 2px;
  background-color: #333;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_globalNavContainer .l-header_normalBlockListItem>p .icon::before {
  transform: rotate(90deg)
}

.l-header_globalNavContainer .l-header_normalBlockListItem>p.is-active .icon::before {
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1);
  transform: rotate(-180deg)
}

.l-header_globalNavContainer .l-header_normalBlockListItemInner {
  width: 100%;
  margin: 1.25rem 0 .6875rem
}

.l-header_globalNavContainer .l-header_normalBlockListItemInner-headline {
  display: block;
  margin-bottom: .9375rem;
  font-size: .875rem
}

.l-header_globalNavContainer .l-header_normalBlockListItemInner-headline:nth-of-type(2) {
  margin-top: .9375rem
}

.l-header_globalNavContainer .l-header_normalBlockListItemInner-list {
  display: flex;
  flex-direction: column;
  gap: .9375rem 0
}

.l-header_globalNavContainer .l-header_normalBlockListItemInner-list.indent {
  padding-left: 1.875rem
}

.l-header_globalNavContainer .l-header_normalBlockListItemInner-listLink a {
  font-size: .875rem
}

.l-header_globalNavContainer .l-header_normalBlock.not-accordion {
  display: flex;
  flex-direction: column;
  gap: .75rem 0
}

.l-header_globalNavContainer .l-header_normalBlock.not-accordion .l-header_normalBlockItem a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0 0 .625rem;
  border-bottom: 1px solid #e5e5e5;
  font-size: .875rem;
  font-weight: 700
}

.l-header_globalNavContainer .l-header_normalBlock.not-accordion .l-header_normalBlockItem a::after {
  display: block;
  content: "";
  height: 1rem;
  background-repeat: no-repeat;
  background-size: contain
}

.l-header_globalNavContainer .l-header_normalBlock.not-accordion .l-header_normalBlockItem a.ico_blog::after {
  width: 1rem;
  background-image: url("../img/common/ico_globalNav-blog-stroke-black.svg")
}

.l-header_globalNavContainer .l-header_normalBlock.not-accordion .l-header_normalBlockItem a.ico_event::after {
  width: 1rem;
  background-image: url("../img/common/ico_globalNav-event-stroke-black.svg")
}

.l-header_globalNavContainer .l-header_normalBlock.not-accordion .l-header_normalBlockItem a.ico_pamphlet::after {
  width: .75rem;
  background-image: url("../img/common/ico_globalNav-pamphlet-stroke-black.svg")
}

.l-header_globalNavContainer .l-header_btnBlockList {
  display: flex;
  flex-direction: column
}

.l-header_globalNavContainer .l-header_btnBlockListItem {
  margin-bottom: .75rem
}

.l-header_globalNavContainer .l-header_btnBlockListItem:last-of-type {
  margin-bottom: 0
}

.l-header_globalNavContainer .l-header_btnBlockListItem>p {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 2.75rem;
  padding: 0 1.25rem;
  font-size: .875rem;
  font-weight: 700;
  color: #fff
}

.l-header_globalNavContainer .l-header_btnBlockListItem>p .icon {
  position: relative;
  display: block;
  width: .75rem;
  height: .75rem
}

.l-header_globalNavContainer .l-header_btnBlockListItem>p .icon::before,.l-header_globalNavContainer .l-header_btnBlockListItem>p .icon::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  display: block;
  content: "";
  width: .75rem;
  height: 2px;
  background-color: #fff;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.l-header_globalNavContainer .l-header_btnBlockListItem>p .icon::before {
  transform: rotate(90deg)
}

.l-header_globalNavContainer .l-header_btnBlockListItem>p.purple {
  background-color: #7213ea
}

.l-header_globalNavContainer .l-header_btnBlockListItem>p.cobaltBlue {
  background-color: #1e49e2
}

.l-header_globalNavContainer .l-header_btnBlockListItem>p.is-active {
  font-weight: 400
}

.l-header_globalNavContainer .l-header_btnBlockListItem>p.is-active .icon::before {
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1);
  transform: rotate(-180deg)
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner {
  width: 100%;
  margin: 1.25rem 0 .6875rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-headline {
  display: block;
  margin-bottom: .9375rem;
  font-size: .875rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-headline:nth-of-type(2) {
  margin-top: .9375rem;
  margin-bottom: 0
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-list {
  display: flex;
  flex-direction: column;
  gap: .9375rem 0
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink.center {
  width: fit-content;
  margin: 0 auto
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink.indent {
  padding-left: 1.875rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink>a {
  font-size: .875rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button {
  width: min(68vw,15.9375rem);
  height: 2.3125rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button:nth-of-type(2) {
  margin-top: .625rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button>a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 .9375rem;
  width: 100%;
  height: 100%;
  font-size: .875rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button>a::after {
  display: block;
  content: "";
  background-repeat: no-repeat;
  background-size: contain
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button>a.ico_pencil::after {
  width: .75rem;
  height: .75rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button>a.ico_person::after {
  width: .625rem;
  height: .75rem
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button.purple>a {
  border: 1px solid #7213ea;
  color: #7213ea
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button.purple>a.ico_pencil::after {
  background-image: url("../img/common/ico_globalNav-pencil-stroke-purple.svg")
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button.purple>a.ico_person::after {
  background-image: url("../img/common/ico_globalNav-person-stroke-purple.svg")
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button.cobaltBlue>a {
  border: 1px solid #1e49e2;
  color: #1e49e2
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button.cobaltBlue>a.ico_pencil::after {
  background-image: url("../img/common/ico_globalNav-pencil-stroke-cobaltBlue.svg")
}

.l-header_globalNavContainer .l-header_btnBlockListItemInner-listLink_button.cobaltBlue>a.ico_person::after {
  background-image: url("../img/common/ico_globalNav-person-stroke-cobaltBlue.svg")
}

.l-footer_container {
  display: flex;
  flex-direction: column;
  padding: 3.75rem 6.0761346999vw 4.6875rem;
  background-color: #00338d
}

@media(max-width: 767.98px) {
  .l-footer_container {
      padding:2.375rem 4vw 3.125rem
  }
}

.l-footer_container .l-footer_headline {
  display: flex;
  align-items: center;
  justify-content: space-between
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_headline {
      align-items:flex-end
  }
}

.l-footer_container .l-footer_headlineLogo {
  height: fit-content
}

.l-footer_container .l-footer_headlineLogo img {
  width: 5.6875rem;
  height: 2.3125rem
}

.l-footer_container .l-footer_headlineSns {
  display: flex;
  gap: 0 1.25rem;
  height: fit-content
}

.l-footer_container .l-footer_headlineSns a img {
  width: 1.25rem;
  height: 1.25rem;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .l-footer_container .l-footer_headlineSns a img:hover {
      opacity:.6;
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.l-footer_container .l-footer_nav {
  position: relative;
  display: flex;
  gap: 0 4.39238653vw;
  color: #fff
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_nav {
      flex-direction:column;
      gap: 2.1875rem 0
  }
}

.l-footer_container .l-footer_nav:first-of-type {
  margin-top: 3.125rem
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_nav:first-of-type {
      margin-top:2.1875rem
  }
}

.l-footer_container .l-footer_nav:first-of-type::before {
  position: absolute;
  top: -27px;
  left: 0;
  display: block;
  content: "";
  width: 1.6875rem;
  height: 1px;
  background-color: #fff
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_nav:first-of-type::before {
      display:none
  }
}

.l-footer_container .l-footer_nav:nth-of-type(2) {
  margin-top: 3.75rem
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_nav:nth-of-type(2) {
      margin-top:2.1875rem
  }
}

.l-footer_container .l-footer_navItem {
  width: min(18.6676427526vw,255px)
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_navItem {
      width:100%
  }
}

.l-footer_container .l-footer_navItemHeading {
  display: block;
  position: relative;
  height: 2.3125rem;
  font-size: 1rem;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .l-footer_container .l-footer_navItemHeading:hover {
      font-weight:700
  }

  .l-footer_container .l-footer_navItemHeading:hover::after {
      width: 13.5625rem
  }
}

.l-footer_container .l-footer_navItemHeading:nth-of-type(2) {
  margin: 2.5rem 0 0
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_navItemHeading:nth-of-type(2) {
      margin:2.1875rem 0 0
  }
}

.l-footer_container .l-footer_navItemHeading::after {
  position: absolute;
  left: 0;
  bottom: .125rem;
  content: "";
  width: 9.8125rem;
  height: .5rem;
  background-image: url("../img/common/ico_footer_arrow-white.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position-x: right;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_navItemHeading::after {
      width:min(84.5333333333vw,19.8125rem);
      background-image: url("../img/common/ico_footer_arrow-sp-white.svg")
  }
}

.l-footer_container .l-footer_navItemInner {
  display: flex;
  flex-direction: column;
  gap: .625rem 0;
  margin: 1.25rem 0 0
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_navItemInner {
      gap:.9375rem 0
  }
}

.l-footer_container .l-footer_navItemInner li a {
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .l-footer_container .l-footer_navItemInner li a:hover {
      font-weight:700;
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

@media(max-width: 767.98px) {
  .l-footer_container .l-footer_navItemInner li a {
      font-size:.875rem
  }
}

.l-footer_externalLink {
  padding: 1.5625rem 0 1.5625rem 6.0761346999vw;
  background-color: #fff
}

@media(max-width: 767.98px) {
  .l-footer_externalLink {
      padding:1.25rem 4vw
  }
}

.l-footer_externalLink ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.25rem
}

@media(max-width: 767.98px) {
  .l-footer_externalLink ul {
      gap:.9375rem min(8vw,1.875rem)
  }
}

.l-footer_externalLink ul li a {
  display: flex;
  align-items: center;
  gap: 0 .625rem;
  font-size: .875rem;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .l-footer_externalLink ul li a:hover {
      font-weight:700;
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.l-footer_externalLink ul li a::after {
  display: block;
  content: "";
  width: .75rem;
  height: .75rem;
  background-image: url("../img/common/ico_footer_externalLink-arrow.svg");
  background-repeat: no-repeat;
  background-size: contain
}

.l-footer_copyRight {
  padding: 1.25rem 6.0761346999vw 4.6875rem;
  background-color: #e5e5e5
}

@media(max-width: 767.98px) {
  .l-footer_copyRight {
      padding:1.25rem 4vw 4.0625rem
  }
}

.l-footer_copyRight p {
  font-size: .75rem;
  line-height: 1.8
}

.l-fixedBottomNav {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3.4375rem;
  background: #7213ea;
  background: linear-gradient(90deg, rgb(114, 19, 234) 0%, rgb(30, 73, 226) 100%);
  z-index: 970
}

.l-fixedBottomNav.fixed {
  position: fixed
}

@media(max-width: 767.98px) {
  .l-fixedBottomNav {
      position:fixed;
      height: 2.8125rem
  }
}

.l-fixedBottomNav .nav_content {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  max-width: 965px;
  margin: 0 auto
}

.l-fixedBottomNav .nav_contentInner {
  position: relative;
  width: min(21.9619326501vw,300px);
  height: 100%;
  padding: .3125rem 0;
  margin: 0 .625rem
}

@media(min-width: 767.98px)and (max-width: 1023.98px) {
  .l-fixedBottomNav .nav_contentInner {
      width:11.25rem
  }
}

@media(max-width: 767.98px) {
  .l-fixedBottomNav .nav_contentInner {
      width:100%
  }

  .l-fixedBottomNav .nav_contentInner:first-of-type::before {
      display: none
  }
}

.l-fixedBottomNav .nav_contentInner::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -10px;
  margin: auto 0;
  display: block;
  content: "";
  width: 1px;
  height: 2.8125rem;
  background-color: rgba(255,255,255,.4)
}

.l-fixedBottomNav .nav_contentInner:last-of-type::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: -10px;
  margin: auto 0;
  display: block;
  content: "";
  width: 1px;
  height: 2.8125rem;
  background-color: rgba(255,255,255,.4)
}

@media(max-width: 767.98px) {
  .l-fixedBottomNav .nav_contentInner:last-of-type::after {
      display:none
  }
}

.l-fixedBottomNav .nav_contentInner>a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 1.4641288433vw;
  width: 100%;
  height: 100%;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(max-width: 767.98px) {
  .l-fixedBottomNav .nav_contentInner>a {
      flex-direction:column;
      gap: .3125rem 0;
      font-size: .8125rem
  }
}

.l-fixedBottomNav .nav_contentInner>a::before {
  display: block;
  content: "";
  height: 1.25rem;
  background-repeat: no-repeat;
  background-size: contain;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1);
  z-index: 1
}

@media(max-width: 767.98px) {
  .l-fixedBottomNav .nav_contentInner>a::before {
      height:.75rem
  }
}

.l-fixedBottomNav .nav_contentInner>a::after {
  position: absolute;
  inset: 0;
  margin: auto;
  display: block;
  content: "";
  width: 0;
  height: 0;
  background-color: #fff;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1);
  z-index: -1
}

@media(hover: hover)and (pointer: fine) {
  .l-fixedBottomNav .nav_contentInner>a:hover {
      color:#7213ea
  }

  .l-fixedBottomNav .nav_contentInner>a:hover::after {
      width: 100%;
      height: 100%;
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.l-fixedBottomNav .nav_contentInner:nth-of-type(1)>a::before {
  width: 1.25rem;
  background-image: url("../img/common/ico_fixedBottomNav-01.svg")
}

@media(max-width: 767.98px) {
  .l-fixedBottomNav .nav_contentInner:nth-of-type(1)>a::before {
      width:.75rem
  }
}

@media(hover: hover)and (pointer: fine) {
  .l-fixedBottomNav .nav_contentInner:nth-of-type(1)>a:hover::before {
      background-image:url("../img/common/ico_fixedBottomNav-hover01.svg")
  }
}

.l-fixedBottomNav .nav_contentInner:nth-of-type(2)>a::before {
  width: 1.25rem;
  background-image: url("../img/common/ico_fixedBottomNav-02.svg")
}

@media(max-width: 767.98px) {
  .l-fixedBottomNav .nav_contentInner:nth-of-type(2)>a::before {
      width:.75rem
  }
}

@media(hover: hover)and (pointer: fine) {
  .l-fixedBottomNav .nav_contentInner:nth-of-type(2)>a:hover::before {
      background-image:url("../img/common/ico_fixedBottomNav-hover02.svg")
  }
}

.l-fixedBottomNav .nav_contentInner:nth-of-type(3)>a::before {
  width: .9375rem;
  background-image: url("../img/common/ico_fixedBottomNav-03.svg")
}

@media(max-width: 767.98px) {
  .l-fixedBottomNav .nav_contentInner:nth-of-type(3)>a::before {
      width:.5625rem
  }
}

@media(hover: hover)and (pointer: fine) {
  .l-fixedBottomNav .nav_contentInner:nth-of-type(3)>a:hover::before {
      background-image:url("../img/common/ico_fixedBottomNav-hover03.svg")
  }
}

.l-fixedBottomBackTopButton {
  position: absolute;
  right: 1.25rem;
  bottom: .375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.125rem;
  height: 2.75rem;
  border: 1px solid #fff;
  background-color: #333;
  z-index: 980;
  cursor: pointer
}

.l-fixedBottomBackTopButton.fixed {
  position: fixed
}

@media(max-width: 767.98px) {
  .l-fixedBottomBackTopButton {
      position:fixed;
      bottom: 3.4375rem;
      width: 2.125rem;
      height: 2.125rem;
      border: none
  }
}

@media(hover: hover)and (pointer: fine) {
  .l-fixedBottomBackTopButton:hover>span {
      transform:translateY(-5px);
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.l-fixedBottomBackTopButton>span {
  display: block;
  width: .75rem;
  height: .375rem;
  background-image: url("../img/common/ico_fixedBottomBackTopButton_arrow.svg");
  background-repeat: no-repeat;
  background-size: contain;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.mask {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,.7);
  width: 100%;
  height: 100%;
  z-index: 99999;
  overflow: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch
}

.mask .container {
  display: table;
  padding: 10px 0;
  width: 100%;
  height: 100%
}

.mask .inner {
  display: table-cell;
  padding: 2.7em 2em;
  vertical-align: middle
}

.mask h2 {
  color: #133378;
  font-size: 40px;
  margin-bottom: 25px
}

.mask #mask_close {
  position: absolute;
  right: 30px;
  top: 30px;
  display: block;
  width: 45px;
  height: 45px;
  background: url("../images/mask_close.gif") center center no-repeat;
  background-size: contain
}

.mask .block-01 {
  width: 100%;
  background-color: #fff;
  margin: 0 auto;
  padding: 53px 50px 70px 50px;
  max-width: 1082px;
  text-align: justify;
  text-justify: inter-ideograph;
  position: relative
}

.mask .block-01 .box01,.mask .block-01 .box02 {
  border-bottom: 1px dashed #1588ca;
  padding-bottom: 32px;
  margin-bottom: 36px
}

.mask .block-01 .box02 {
  padding-bottom: 39px;
  margin-bottom: 35px
}

.mask .block-01 .box01 p {
  font-size: 16px;
  color: #00338d;
  font-weight: bold;
  line-height: 1.75
}

.mask .block-01 .box02 p {
  font-size: 14px;
  line-height: 1.85
}

.mask .block-01 .box02 ul {
  display: flex
}

.mask .block-01 .box02 ul li {
  padding: 23px 0 0 0;
  margin-right: 2.5em
}

.mask .block-01 .box02 ul li a {
  color: #1588ca;
  text-decoration: none;
  font-size: 15px
}

.mask .block-01 .box02 ul li a:hover {
  text-decoration: underline
}

.mask .block-01 .box03 p {
  font-size: 15px;
  font-weight: bold
}

.mask .block-01 .box03 h4 {
  font-weight: 100;
  color: #00338d;
  font-size: 20px;
  margin: 15px 0 20px 0;
  text-indent: -0.5em
}

.mask .block-01 .box03 ul li {
  float: left;
  margin-top: 15px
}

.mask .block-01 .box03 ul li:nth-of-type(1) {
  margin-left: 2px;
  margin-right: 41px
}

.privacy-container {
  background: #f6f6f6;
  border-top: 5px solid rgba(153,153,153,.8);
  height: auto;
  position: fixed;
  width: 100%;
  color: #333;
  bottom: 0;
  z-index: 1000
}

.privacy-container .privacy-inner {
  position: relative;
  font-size: 14px;
  margin: 0 auto;
  width: 100%;
  padding: 10px !important
}

.privacy-container .privacy-prefix {
  font-size: 16px;
  line-height: 1.3;
  margin: 7px 0px;
  font-weight: normal;
  line-height: 1.3 !important
}

.privacy-container .privacy-anchor {
  color: #005eb8;
  font-size: 16px;
  font-weight: normal;
  text-decoration: none
}

.privacy-container .btn-close-main {
  color: #666;
  font-size: 16px;
  text-align: right;
  display: block;
  line-height: 1.3 !important;
  text-decoration: none;
  outline: none
}

.privacy-container a:hover {
  text-decoration: underline
}

@media(min-width: 980px) {
  .privacy-container .privacy-inner {
      width:1102px
  }
}

@media screen and (max-width: 767px) {
  .mask img {
      max-width:100%
  }

  .mask .inner {
      position: static;
      left: 0;
      top: 0;
      transform: translate(0, 0);
      padding: 1.7em 1em
  }

  .mask #mask_close {
      width: 25px;
      height: 25px;
      top: 20px;
      right: 30px
  }

  .mask h2 {
      margin-top: 30px;
      font-size: 2.2rem
  }

  .mask .block-01 {
      padding: 20px 10px 30px 10px;
      box-sizing: border-box
  }

  .policy .block-01 .box h3 {
      font-size: 16px;
      line-height: 1.7;
      margin-bottom: 20px
  }

  .mask .block-01 .box01 p {
      font-size: 15px;
      line-height: 1.6
  }

  .mask .block-01 .box01 p br {
      display: none
  }

  .mask .block-01 .box02 p br {
      display: none
  }

  .mask .block-01 .box02 ul {
      flex-wrap: wrap
  }

  .mask .block-01 .box02 ul li {
      width: 100%;
      margin-right: 0
  }

  .mask .block-01 .box03 ul li {
      float: none;
      margin: 0 auto 15px;
      margin-right: 0
  }

  .mask .block-01 .box03 ul li:nth-of-type(1) {
      margin-right: 0px
  }
}

.arrow {
  position: relative;
  padding-left: 20px
}

.arrow::after {
  position: absolute;
  content: "";
  display: block;
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border: 4px solid #46a736;
  border-left-color: rgba(0,0,0,0);
  border-top-color: rgba(0,0,0,0);
  transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  left: 0;
  top: 50%;
  margin-top: -7px
}

.privacy-container .fa-chevron-right {
  color: #43b02a;
  margin-left: 5px
}

.c-button {
  font-size: 1rem;
  cursor: pointer
}

.c-button_purple {
  color: #fff;
  border: 2px solid #7213ea;
  background-color: #7213ea;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .c-button_purple:hover {
      color:#7213ea;
      background-color: #fff;
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.c-button_purple.ico_pencil::after {
  display: block;
  content: "";
  width: .75rem;
  height: .75rem;
  background-image: url("../img/common/ico_megaMenu-pencil.svg");
  background-repeat: no-repeat;
  background-size: contain
}

@media(hover: hover)and (pointer: fine) {
  .c-button_purple.ico_pencil:hover::after {
      background-image:url("../img/common/ico_megaMenu-purple-pencil.svg");
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.c-button_purple.ico_person::after {
  display: block;
  content: "";
  width: .625rem;
  height: .75rem;
  background-image: url("../img/common/ico_megaMenu-person.svg");
  background-repeat: no-repeat;
  background-size: contain
}

@media(hover: hover)and (pointer: fine) {
  .c-button_purple.ico_person:hover::after {
      background-image:url("../img/common/ico_megaMenu-purple-person.svg");
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.c-button_cobaltBlue {
  color: #fff;
  border: 2px solid #1e49e2;
  background-color: #1e49e2;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .c-button_cobaltBlue:hover {
      color:#1e49e2;
      background-color: #fff;
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.c-button_cobaltBlue.ico_pencil::after {
  display: block;
  content: "";
  width: .75rem;
  height: .75rem;
  background-image: url("../img/common/ico_megaMenu-pencil.svg");
  background-repeat: no-repeat;
  background-size: contain
}

@media(hover: hover)and (pointer: fine) {
  .c-button_cobaltBlue.ico_pencil:hover::after {
      background-image:url("../img/common/ico_megaMenu-cobaltBlue-pencil.svg");
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.c-button_cobaltBlue.ico_person::after {
  display: block;
  content: "";
  width: .625rem;
  height: .75rem;
  background-image: url("../img/common/ico_megaMenu-person.svg");
  background-repeat: no-repeat;
  background-size: contain
}

@media(hover: hover)and (pointer: fine) {
  .c-button_cobaltBlue.ico_person:hover::after {
      background-image:url("../img/common/ico_megaMenu-cobaltBlue-person.svg");
      transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
  }
}

.c-button_kpmgBlue {
  color: #fff;
  border: 2px solid #1e49e2;
  background-color: #00338d;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .c-button_kpmgBlue:hover {
      font-weight:700
  }
}

.c-button-bg-kpmgBlue_arrow-white {
  background-color: #1e49e2
}

@media(min-width: 767.98px)and (max-width: 1200px) {
  .c-button-bg-kpmgBlue_arrow-white {
      width:100%
  }
}

@media(max-width: 767.98px) {
  .c-button-bg-kpmgBlue_arrow-white {
      height:2.875rem;
      margin: 1.25rem 0 0
  }
}

.c-button-bg-kpmgBlue_arrow-white a {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 1.25rem;
  color: #fff;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(max-width: 767.98px) {
  .c-button-bg-kpmgBlue_arrow-white a {
      padding:0 1.25rem 0 1.375rem;
      font-size: .875rem
  }
}

.c-button-bg-kpmgBlue_arrow-white a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.25rem;
  margin: auto 0;
  content: "";
  width: 2.375rem;
  height: .5rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position-x: right;
  background-image: url("../img/common/ico_button_arrow-white.svg");
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .c-button-bg-kpmgBlue_arrow-white a:hover {
      font-weight:700
  }

  .c-button-bg-kpmgBlue_arrow-white a:hover::after {
      width: 6rem;
      right: -2.375rem
  }
}

.c-lowerKv_container {
  position: relative;
  overflow: hidden
}

.c-lowerKv_container .c-lowerKv_bg img {
  aspect-ratio: 1366/260
}

@media(max-width: 767.98px) {
  .c-lowerKv_container .c-lowerKv_bg img {
      aspect-ratio:375/150
  }
}

.c-lowerKv_container .c-lowerKv_title {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  left: min(6.0761346999vw,83px);
  height: fit-content
}

@media(max-width: 767.98px) {
  .c-lowerKv_container .c-lowerKv_title {
      left:4vw
  }
}

.c-lowerKv_container .c-lowerKv_title h2 {
  width: min(87.8477306003vw,1200px);
  font-weight: 700;
  font-size: 3.125rem;
  line-height: 1.2;
  color: #fff
}

@media(max-width: 767.98px) {
  .c-lowerKv_container .c-lowerKv_title h2 {
      width:92.2666666667vw;
      font-size: max(6.9333333333vw,26px);
      line-height: 1.6
  }
}

.c-breadcrumb {
  width: 100%;
  height: 2.5rem;
  padding: 0 0 0 min(6.0761346999vw,83px);
  background-color: #f7f7f7
}

@media(max-width: 767.98px) {
  .c-breadcrumb {
      width:100%;
      height: auto;
      padding: 0 4vw;
      margin: 3.125rem 0 0;
      background-color: rgba(0,0,0,0)
  }
}

.c-breadcrumb ol {
  display: flex;
  align-items: center;
  gap: 0 .625rem;
  height: 100%
}

@media(max-width: 767.98px) {
  .c-breadcrumb ol {
      padding:0 0 .3125rem;
      overflow-x: scroll
  }
}

.c-breadcrumb ol li {
  display: flex;
  align-items: center;
  gap: 0 .625rem
}

@media(max-width: 767.98px) {
  .c-breadcrumb ol li {
      flex-shrink:0;
      white-space: nowrap
  }
}

.c-breadcrumb ol li:nth-of-type(1)::before {
  display: none
}

.c-breadcrumb ol li::before {
  display: block;
  content: "/";
  font-size: .875rem;
  color: rgba(30,73,226,.3)
}

.c-breadcrumb ol li a {
  font-size: .875rem
}

.c-lowTab {
  width: 100%;
  height: 4.875rem;
  padding: 1.125rem 0 0;
  background-color: #f7f7f7
}

@media(max-width: 767.98px) {
  .c-lowTab {
      height:2.875rem;
      padding: .75rem 4vw 0
  }
}

.c-lowTab_row {
  display: flex;
  align-items: flex-end;
  gap: 0 2.5rem;
  width: fit-content;
  height: 100%;
  margin: 0 auto
}

@media(max-width: 767.98px) {
  .c-lowTab_row {
      gap:0 1.5625rem
  }
}

.c-lowTab_row .c-lowTab-item {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .625rem 0;
  width: 12.5rem;
  height: 100%;
  text-align: center;
  line-height: 1.5;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(max-width: 767.98px) {
  .c-lowTab_row .c-lowTab-item {
      width:fit-content;
      gap: 0;
      font-size: .875rem
  }
}

.c-lowTab_row .c-lowTab-item::after {
  display: block;
  content: "";
  width: .75rem;
  height: .375rem;
  background-image: url("../img/common/ico_common_lowTab_arrow-black.svg");
  background-repeat: no-repeat;
  background-size: contain
}

@media(max-width: 767.98px) {
  .c-lowTab_row .c-lowTab-item::after {
      display:none
  }
}

.c-lowTab_row .c-lowTab-item.is-active {
  gap: 0;
  justify-content: space-between;
  padding: 0 0 .375rem;
  border-bottom: 4px solid #1e49e2;
  font-weight: 700;
  color: #1e49e2;
  pointer-events: none
}

.c-lowTab_row .c-lowTab-item.is-active::after {
  background-image: url("../img/common/ico_common_lowTab_arrow-blue.svg")
}

@media(hover: hover)and (pointer: fine) {
  .c-lowTab_row .c-lowTab-item:hover {
      gap:1.25rem 0;
      font-weight: 700;
      color: #1e49e2
  }

  .c-lowTab_row .c-lowTab-item:hover::after {
      background-image: url("../img/common/ico_common_lowTab_arrow-blue.svg")
  }
}

.c-lowTab .simplebar-content {
  height: 100%
}

.c-lowTab .simplebar-track {
  margin: 0 max(4vw,15px);
  border: 1px solid #e5e5e5;
  background: rgba(0,0,0,0)
}

.c-lowTab .simplebar-track .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
  border-radius: 0
}

.c-lowTab .simplebar-track.simplebar-horizontal {
  bottom: -18px;
  height: 6px
}

.c-lowTab .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  top: auto;
  height: 100%
}

.c-lowTab .simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  left: 0;
  right: 0;
  background: #e5e5e5
}

.c-link_ico-arrow {
  display: flex;
  align-items: center;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(max-width: 767.98px) {
  .c-link_ico-arrow {
      font-size:.875rem
  }
}

.c-link_ico-arrow::after {
  display: block;
  content: "";
  width: 2.375rem;
  height: .5rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position-x: right;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .c-link_ico-arrow:hover {
      font-weight:700
  }
}

@media(max-width: 767.98px) {
  .container {
      padding:2.75rem 0 3.125rem
  }
}

section h2.sectionTitle {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
  color: #00338d
}

@media(max-width: 767.98px) {
  section h2.sectionTitle {
      font-size:1.375rem
  }
}

section h2.sectionTitle.border_center {
  position: relative;
  padding: 0 0 1.875rem;
  text-align: center
}

@media(max-width: 767.98px) {
  section h2.sectionTitle.border_center {
      padding:0 0 .9375rem
  }
}

section h2.sectionTitle.border_center::after {
  position: absolute;
  bottom: 1px;
  right: 0;
  left: 0;
  margin: 0 auto;
  display: block;
  content: "";
  width: 6.25rem;
  height: 1px;
  background-color: #00338d
}

@media(max-width: 767.98px) {
  section h2.sectionTitle.border_center::after {
      width:5rem
  }
}
/* ここまで共通CSS */



.caseStudyWrapper{
  width: min(94vw, 1100px);
  margin: 0 auto;
  position: relative;
  z-index: 10;
}


@media (max-width: 767.98px) {
  .caseStudyWrapper{
      width: 100%;
      padding: 0 4vw;
  }
}


.caseStudyCollabo-wrapper{
  padding: 27px 0 40px;
  position: relative;
}

@media (max-width: 767.98px) {
  .caseStudyCollabo-wrapper{
    padding: 20px 4vw ;
    position: relative;
  }
}


.caseStudyCollabo-wrapper::after{
  content: "";
  position: absolute;
  width: min(900px , calc(100% - 200px));
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background-color: #00338D;
  z-index: -10;
}

@media (max-width: 767.98px) {
  .caseStudyCollabo-wrapper{
    padding: 20px 4vw ;
    position: relative;
  }

  .caseStudyCollabo-wrapper::after{
    width: 100%;

  }
}



.caseStudyCollaboTitle{
  font-size: 1.625rem;
  width: fit-content;
  margin: 0 auto;
  padding: 0 35px;
  font-weight: 700;
  line-height: 1.6;
  color: #ffffff;
  position: relative;
}

.caseStudyCollaboTitle::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 20px;
  height: 1px;
  background-color: #ffffff;
}

.caseStudyCollaboTitle::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 20px;
  height: 1px;
  background-color: #ffffff;
}

@media (max-width: 767.98px) {
  .caseStudyCollaboTitle{
    font-size: 1.25rem;
    padding:  0 30px;
  }

  .caseStudyCollaboTitle::before{
    width: 15px;
  }
  
  .caseStudyCollaboTitle::after{
    width: 15px;
  }
  .caseStudyCollabo-wrapper{
    padding: 20px 4vw ;
    position: relative;
  }

}


.caseStudyCollaboFlex{
  margin: 27px auto 0;
}

@media (max-width: 767.98px) {
  .caseStudyCollaboFlex{
    margin: 20px auto 0;
  }
}


.caseStudyFlex{
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
}
@media (max-width: 767.98px) {
  .caseStudyFlex{
    gap: 15px;
  }
}


.caseStudyOthers{
  margin: 40px auto 0;
}

@media (max-width: 767.98px) {
  .caseStudyOthers{
    margin: 20px auto 0;
  }
}


/* 一覧用共通パーツ */
.caseStudyFlexNode{
  width: calc(50% - 15px);
  height: 16.125rem;
  position: relative;
}

@media (max-width: 767.98px) {
  .caseStudyFlexNode{
    width: 100%;
    height: auto;
    aspect-ratio: 69 / 38;
  }
}


.caseStudyFlexNode::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 10;
  width: 100%;
  height: 7.875rem;
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.11) 33.99%, rgba(0, 0, 0, 0.8) 100%);
}

.caseStudyFlexNode-link{
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;
  flex-direction: column;
  justify-content: end;
  z-index: 20;
  padding: 20px 65px 17px 30px;
}

@media (max-width: 767.98px) {
  .caseStudyFlexNode-link{
    padding: 10px 12px 10px 12px;
  }
}


.caseStudyFlexNode-link:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: "";
  width: 0;
  height: 100%;
  background-color: rgba(114,19,234,.4);
  opacity: 0;
  z-index: 1;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

.caseStudyFlexNode-link:after {
  position: absolute;
  inset: 0;
  margin: auto;
  display: block;
  content: "";
  width: 3.375rem;
  height: .625rem;
  background-image: url("../img/common/ico_common_hover-arrow-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
  z-index: 10;
  transition: all 500ms cubic-bezier(0.17, 0.935, 0.305, 1)
}

@media(hover: hover)and (pointer: fine) {
  .caseStudyFlexNode-link:hover::before {
      width:100%;
      opacity: 1
  }

  .caseStudyFlexNode-link:hover::after {
      opacity: 1
  }
}




.caseStudyFlexNode-link-img{
  position: absolute;
  top: 0;
  left: 0;
  z-index: -10;
  width: 100%;
  height: 100%;
}
.caseStudyFlexNode-link-img img{
  width: 100%;
  height: 100%;
  object-position: center;
  object-fit: cover;
}

.caseStudyFlexNode-link-img:after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 10;
  width: 100%;
  height: 7.875rem;
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.11) 33.99%, rgba(0, 0, 0, 0.8) 100%);

}

@media (max-width: 767.98px) {
  .caseStudyFlexNode-link-img:after{
    height: 6.25rem;
  }
  
}


.caseStudyFlexNode-link-tag{
  position: relative;
  z-index: 10;
  padding: 4px 10px;
  border: 1px solid #ffffff;
  color: #ffffff;
  font-size: .8125rem;
  width: fit-content;
  background-color: rgba(0, 0, 0, 0.5);

}

.caseStudyFlexNode-link-title{
  position: relative;
  z-index: 10;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.8;
  color: #ffffff;
  margin: 8px 0 0 0;
}

@media (max-width: 767.98px) {
  .caseStudyFlexNode-link-title{
    font-size: .875rem;
    margin: 5px 0 0 0;
  }
  
}

