@charset "UTF-8";
/*!
==========================================================================

SASSにて記述しておりますので、
以下のスタイルには触れないようお願いいたします。

==========================================================================
*/
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap");
@import url("https://use.typekit.net/tee2bgl.css");
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
*/
html {
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
  overflow-y: scroll;
}

*, ::before, ::after {
  box-sizing: inherit;
  background-repeat: no-repeat;
}

::before, ::after {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  margin: 0;
  padding: 0;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible;
}

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

summary {
  display: block;
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden], template {
  display: none;
}

abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none;
}

a {
  -webkit-text-decoration-skip: objects;
  background-color: transparent;
}
a:active, a:hover {
  outline-width: 0;
}

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

b, strong {
  font-weight: bolder;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

input {
  border-radius: 0;
}

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

[disabled] {
  cursor: default;
}

[type=number] {
  width: auto;
}

[type=search] {
  -webkit-appearance: textfield;
}
[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

[type=text], [type=password] {
  background: #fff;
  width: 100%;
  padding: 7px;
  border-radius: 5px;
  border: 1px solid #5e8dc9;
}

textarea {
  overflow: auto;
  resize: vertical;
}

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

optgroup {
  font-weight: bold;
}

button {
  overflow: visible;
}
button::-moz-focus-inner {
  padding: 0;
  border-style: 0;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: 0;
}

button:-moz-focusring, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button, html [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button;
}

button, select {
  text-transform: none;
}

button, input, select, textarea {
  border-style: none;
  background-color: transparent;
  color: inherit;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}
select::-ms-expand {
  display: none;
}
select::-ms-value {
  color: currentColor;
}

legend {
  display: table;
  max-width: 100%;
  border: 0;
  color: inherit;
  white-space: normal;
}

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

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden;
}

audio, canvas, progress, video {
  display: inline-block;
}

@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    clip: rect(0 0 0 0) !important;
    position: absolute !important;
  }
}
[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled] {
  cursor: default;
}

::-moz-selection, ::selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none;
}

html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  color: #333;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 62.5%;
}
html.is-hidden {
  overflow: hidden;
}

body {
  min-width: 320px;
  background: #fff;
  font-size: 1.6rem;
}
body * {
  word-wrap: break-word;
}
@media only screen and (max-width: 1024px) {
  body {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 600px) {
  body {
    font-size: 1.4rem;
  }
}

h1, h2, h3, h4, h5 {
  font-size: 1em;
  font-weight: inherit;
}

a {
  color: #333;
  text-decoration: none;
}
a:visited {
  color: #333;
  text-decoration: none;
}
a:hover {
  transition: 0.3s ease-in-out;
}

ul, li {
  list-style: none;
}

i, em {
  font-style: normal;
}

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

table {
  border-collapse: collapse;
}

#wrapper {
  min-width: 1200px;
  margin-top: 100px;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  #wrapper {
    min-width: inherit;
    margin-top: 50px;
  }
}

.inner {
  max-width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .inner {
    width: 90%;
  }
}

*::-moz-selection, *::selection {
  background: #129fe8;
  color: #fff;
}

.sp, .tab {
  display: none;
}

@media only screen and (max-width: 1024px) {
  .sp {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  .sp {
    display: none;
  }
}
@media only screen and (max-width: 600px) {
  .sp {
    display: inherit;
  }
}

@media only screen and (max-width: 1024px) {
  .tab {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  .tab {
    display: inherit;
  }
}
@media only screen and (max-width: 600px) {
  .tab {
    display: inherit;
  }
}

.pc {
  display: inherit;
}
@media only screen and (max-width: 1024px) {
  .pc {
    display: inherit;
  }
}
@media only screen and (max-width: 768px) {
  .pc {
    display: inherit;
  }
}
@media only screen and (max-width: 600px) {
  .pc {
    display: none;
  }
}

.link {
  color: #0058aa !important;
  text-decoration: underline;
  cursor: pointer;
}

.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

@font-face {
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-family: "slick";
  font-style: normal;
  font-weight: normal;
}
.slick-prev, .slick-next {
  display: block;
  position: absolute;
  top: 50%;
  width: 20px;
  height: 20px;
  padding: 0;
  transform: translate(0, -50%);
  border: none;
  outline: none;
  background: transparent;
  color: transparent;
  font-size: 0px;
  line-height: 0px;
  cursor: pointer;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before, .slick-next:before {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #fff;
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  opacity: 0.75;
}

.slick-prev {
  left: -25px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}
[dir=rtl] .slick-next {
  right: auto;
  left: -25px;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  display: block;
  position: absolute;
  bottom: -25px;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
}
.slick-dots li {
  display: inline-block;
  position: relative;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  border: 0;
  outline: none;
  background: transparent;
  color: transparent;
  font-size: 0px;
  line-height: 0px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  color: #000;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  content: "•";
  opacity: 0.25;
}
.slick-dots li.slick-active button:before {
  color: #000;
  opacity: 0.75;
}

.slick-slider {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -ms-touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
  display: block;
  position: relative;
  touch-action: pan-y;
  user-select: none;
}

.slick-list {
  display: block;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  margin-right: auto;
  margin-left: auto;
}
.slick-track:before {
  display: table;
  content: "";
}
.slick-track:after {
  display: table;
  content: "";
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  height: 100%;
  min-height: 1px;
  float: left;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.l-article > *:first-child {
  margin-top: 0;
}
.l-article .c-title--m {
  margin-top: 40px;
}
.l-article .c-title--s {
  margin-top: 32px;
}
.l-article .flow_box {
  display: inline-block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  border-style: solid;
  border-width: 30px 60px 0 60px;
  border-color: rgba(94, 152, 200, 0.5) transparent transparent transparent;
}
.l-article > p, .l-article > ul, .l-article > ol, .l-article > table, .l-article > figure, .l-article > .c-column--gray {
  margin-bottom: 24px;
}
.l-article .c-flexbox, .l-article .c-flexbox--2, .l-article .c-flexbox--3, .l-article .c-flexbox--4, .l-article .c-flexbox--6 {
  margin-bottom: 0;
}
.l-article p > a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.l-article p > a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.l-article p > strong {
  padding: 0 0.1em;
  color: #0058aa;
}
.l-article > ul > li > a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.l-article ol > li > a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.l-article ol > li > a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.l-article > ul > li > a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .l-article > p, .l-article > ul, .l-article > ol, .l-article > table, .l-article > figure {
    margin-bottom: 16px;
  }
  .l-article > strong::before {
    height: 6px;
  }
}

.l-footer {
  z-index: 0;
  position: relative;
  padding-bottom: 16px;
  background: #00305e;
  color: #fff;
}
.l-footer a.-external span {
  vertical-align: middle;
  display: inline-block;
  position: relative;
  top: -2px;
  left: 5px;
  background: url(../img/link_ico.svg) no-repeat center/contain;
  width: 13px;
  height: 13px;
  opacity: 0.5;
  transition: 0.5s;
}
.l-footer a.-external:hover span {
  opacity: 1;
}
.l-footer::before {
  display: block;
  position: absolute;
  top: -138px;
  left: 0;
  width: 100%;
  height: 138px;
  background: url(/common/img/footer_illust.png) center/auto 100% repeat-x;
  content: "";
}
@media only screen and (max-width: 480px) {
  .l-footer::before {
    top: -100px;
    height: 100px;
  }
}
.l-footer__sitemap {
  display: flex;
  padding: 48px 0 36px;
}
.l-footer__sitemap > div {
  width: 25%;
}
@media only screen and (max-width: 768px) {
  .l-footer__sitemap {
    flex-wrap: wrap;
  }
  .l-footer__sitemap > div {
    width: 50%;
    padding-right: 20px;
  }
  .l-footer__sitemap > div:nth-child(3), .l-footer__sitemap > div:nth-child(4) {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 480px) {
  .l-footer__sitemap {
    padding: 24px 0 16px;
  }
  .l-footer__sitemap > div {
    padding-right: 16px;
  }
  .l-footer__sitemap > div:nth-child(3), .l-footer__sitemap > div:nth-child(4) {
    margin-top: 8px;
  }
}
.l-footer__nav1 > li + li {
  margin-top: 24px;
}
.l-footer__nav1 > li > a {
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
}
@media only screen and (max-width: 480px) {
  .l-footer__nav1 > li + li {
    margin-top: 16px;
  }
  .l-footer__nav1 > li > a {
    font-size: 1.2rem;
  }
}
.l-footer__nav2 {
  margin-top: 16px;
  margin-bottom: 24px;
}
.l-footer__nav2 > li + li {
  margin-top: 8px;
}
.l-footer__nav2 > li > a, .l-footer__nav2 > li > p {
  display: inline-block;
  position: relative;
  padding-left: 14px;
  color: rgba(255, 255, 255, 0.6);
  font-size: 1.2rem;
  line-height: 1.2;
}
.l-footer__nav2 > li > a::before, .l-footer__nav2 > li > p::before {
  display: block;
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 5px;
  height: 1px;
  margin: auto;
  background: #129fe8;
  content: "";
}
.l-footer__nav2 > li > a:hover {
  color: #fff;
}
.l-footer__nav2 > li > p:hover {
  color: #fff;
  color: rgba(255, 255, 255, 0.6);
}
@media only screen and (max-width: 480px) {
  .l-footer__nav2 > li + li {
    margin-top: 12px;
  }
  .l-footer__nav2 > li > a, .l-footer__nav2 > li > p {
    display: block;
    padding-left: 10px;
    font-size: 1.1rem;
  }
}
.l-footer__nav3 {
  margin-top: 8px;
  margin-left: 14px;
}
.l-footer__nav3 > li + li {
  margin-top: 8px;
}
.l-footer__nav3 > li > a {
  display: inline-block;
  position: relative;
  padding-left: 14px;
  color: rgba(255, 255, 255, 0.6);
  font-size: 1.2rem;
  line-height: 1.2;
}
.l-footer__nav3 > li > a::before {
  display: block;
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 5px;
  height: 1px;
  margin: auto;
  background: #129fe8;
  content: "";
}
.l-footer__nav3 > li > a:hover {
  color: #fff;
}
@media only screen and (max-width: 480px) {
  .l-footer__nav3 {
    margin-top: 12px;
    margin-left: 10px;
  }
  .l-footer__nav3 > li + li {
    margin-top: 12px;
  }
  .l-footer__nav3 > li > a {
    display: block;
    padding-left: 10px;
    font-size: 1.1rem;
  }
}
.l-footer small {
  display: block;
  width: 100%;
  color: rgba(255, 255, 255, 0.4);
  font-size: 1.2rem;
  text-align: right;
}
@media only screen and (max-width: 480px) {
  .l-footer small {
    font-size: 1rem;
  }
}
.l-footer .l-lines {
  position: absolute;
}
.l-footer .l-line--1, .l-footer .l-line--2, .l-footer .l-line--3, .l-footer .l-line--4, .l-footer .l-line--5, .l-footer .l-line--6, .l-footer .l-line--7 {
  background: rgba(255, 255, 255, 0.04);
}

.l-pagetop {
  display: block;
  z-index: 10;
  position: absolute;
  top: -30px;
  right: 40px;
  width: 60px;
  height: 60px;
  margin-top: 0;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.12);
  transition: margin-top 0.3s ease-in-out;
}
.l-pagetop::after {
  box-sizing: border-box;
  display: block;
  position: absolute;
  top: 27px;
  right: 0;
  left: 0;
  width: 12px;
  height: 12px;
  margin: auto;
  transform: rotate(45deg);
  border-top: 2px solid #0058aa;
  border-left: 2px solid #0058aa;
  content: "";
}
.l-pagetop:hover {
  margin-top: -10px;
  transition: margin-top 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .l-pagetop {
    top: -23px;
    right: 0;
    left: 0;
    width: 46px;
    height: 46px;
    margin: 0 auto;
  }
  .l-pagetop::after {
    top: 21px;
    width: 10px;
    height: 10px;
  }
  .l-pagetop:hover {
    margin-top: -4px;
  }
}

.l-breadCrumb {
  z-index: 0;
  position: relative;
  padding: 16px 0;
  background: #034481;
  font-size: 1.2rem;
}
@media only screen and (max-width: 768px) {
  .l-breadCrumb {
    padding: 28px 0 16px;
    font-size: 1.1rem;
  }
}
.l-breadCrumb__list {
  display: flex;
  flex-wrap: wrap;
}
.l-breadCrumb__list > li {
  position: relative;
}
@media only screen and (max-width: 768px) {
  .l-breadCrumb__list > li {
    margin-top: 4px;
  }
}
.l-breadCrumb__list > li + li {
  display: inline-block;
  margin-left: 10px;
  padding-left: 20px;
}
.l-breadCrumb__list > li + li::before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 10px;
  height: 1px;
  margin: auto;
  background: #738d9d;
  content: "";
}
.l-breadCrumb__list > li > a {
  color: #fff;
}
.l-breadCrumb__list > li > a:hover {
  text-decoration: underline;
}
.l-breadCrumb .l-lines {
  position: absolute;
}
.l-breadCrumb .l-line--1, .l-breadCrumb .l-line--2, .l-breadCrumb .l-line--3, .l-breadCrumb .l-line--4, .l-breadCrumb .l-line--5, .l-breadCrumb .l-line--6, .l-breadCrumb .l-line--7 {
  background: rgba(255, 255, 255, 0.04);
}

.l-header {
  z-index: 999;
  position: fixed;
  top: 0;
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100px;
  background: #fff;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  opacity: 1;
  transition: box-shadow 0.3s ease-in-out, top 0.3s ease-in-out, opacity 0.3s ease-in-out;
  border-bottom: 2px solid #129fe8;
}
.l-header.is-shadow {
  top: 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  opacity: 1;
  transition: box-shadow 0.3s ease-in-out, top 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.l-header.is-hide {
  top: -100px;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  opacity: 1;
  transition: box-shadow 0.3s ease-in-out, top 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
@media only screen and (max-width: 1500px) {
  .l-header {
    flex-direction: row-reverse;
  }
  _:-ms-fullscreen, :root .l-header {
    flex-direction: row;
  }
}
@media only screen and (max-width: 1024px) {
  .l-header {
    display: block;
    min-width: inherit;
    height: 50px;
  }
  .l-header.is-hide {
    top: -50px;
  }
}
.l-header__logo img {
  width: 210px;
}
@media only screen and (max-width: 1024px) {
  .l-header__logo {
    padding-top: 15px;
    padding-left: 5%;
  }
  .l-header__logo img {
    width: 180px;
  }
}
@media only screen and (max-width: 480px) {
  .l-header__logo {
    padding-top: 17px;
  }
  .l-header__logo img {
    width: 150px;
  }
}
.l-header__lang {
  line-height: 1;
  display: flex;
  align-items: center;
  position: relative;
  margin-left: 20px;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .l-header__lang {
    position: absolute;
    right: 45px;
    top: 2px;
    padding: 16px 0;
    margin: 0;
  }
}
.l-header__lang figure {
  line-height: 0;
  padding-right: 15px;
}
.l-header__lang figure::before {
  content: "";
  display: block;
  position: absolute;
  right: 5px;
  top: -3px;
  bottom: 0;
  transform: rotate(45deg);
  width: 6px;
  height: 6px;
  margin: auto;
  border-right: 2px solid #0058aa;
  border-bottom: 2px solid #0058aa;
  box-sizing: border-box;
}
.l-header__lang figure img {
  vertical-align: middle;
}
.l-header__lang figure figcaption {
  font-size: 1.3rem;
  vertical-align: baseline;
  display: inline-block;
  width: 70px;
  padding-left: 5px;
  padding-bottom: 2px;
}
@media only screen and (max-width: 1024px) {
  .l-header__lang figure {
    padding-right: 0;
  }
  .l-header__lang figure::before {
    display: none;
  }
}
.l-header__lang ul {
  display: none;
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-50%);
  z-index: 100;
  width: 90px;
  margin: auto;
}
.l-header__lang ul li {
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
  display: block;
  background: #034481;
  padding: 10px 5px;
  transition: 0.3s;
}
.l-header__lang ul li + li {
  border-top: 1px solid rgba(255, 255, 255, 0.5);
}
.l-header__lang ul li:hover {
  background: #129fe8;
}
@media only screen and (max-width: 1024px) {
  .l-header__lang ul {
    top: calc(100% - 8px);
  }
  .l-header__lang ul li {
    padding: 15px 5px;
  }
}
.l-header__flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  .l-header__flex .l-header__logo {
    display: none;
  }
  .l-header__flex .l-header__lang {
    display: none;
  }
}
.l-header__menuBar {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .l-header__menuBar {
    display: block;
    position: absolute;
    top: 0;
    right: -5px;
    width: 50px;
    height: 50px;
  }
  .l-header__menuBar > span {
    display: block;
    position: absolute;
    right: 0;
    left: 0;
    width: 20px;
    height: 2px;
    margin: auto;
    background: #0058aa;
  }
  .l-header__menuBar > span:nth-child(1) {
    top: 16px;
    transform: rotate(0);
    transition: top 0.3s ease-in-out, transform 0.3s ease-in-out;
  }
  .l-header__menuBar > span:nth-child(2) {
    top: 24px;
  }
  .l-header__menuBar > span:nth-child(3) {
    bottom: 16px;
    transform: rotate(0);
    transition: bottom 0.3s ease-in-out, transform 0.3s ease-in-out;
  }
  .l-header__menuBar.is-active > span:nth-child(1) {
    top: 24px;
    transform: rotate(45deg);
    transition: top 0.3s ease-in-out, transform 0.3s ease-in-out;
  }
  .l-header__menuBar.is-active > span:nth-child(2) {
    display: none;
  }
  .l-header__menuBar.is-active > span:nth-child(3) {
    bottom: 24px;
    transform: rotate(-45deg);
    transition: bottom 0.3s ease-in-out, transform 0.3s ease-in-out;
  }
}
.l-header__menuWrap {
  display: flex;
  justify-content: space-between;
  margin-right: calc(50% - 50vw);
}
@media only screen and (max-width: 1024px) {
  .l-header__menuWrap {
    display: block;
    z-index: 10;
    position: fixed;
    top: 50px;
    left: 0;
    width: 100vw;
    background: #fff;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease-in-out;
  }
  .l-header__menuWrap.is-show {
    opacity: 1;
    pointer-events: auto;
    transition: opacity 0.3s ease-in-out;
  }
  .l-header__menuWrap.is-show::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #fff;
    content: "";
  }
}
.l-header__menu {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  flex-wrap: wrap;
  padding-top: 21px;
  margin-right: 15px;
  width: 100%;
  min-width: 820px;
}
@media only screen and (max-width: 1024px) {
  .l-header__menu {
    min-width: unset;
    padding-top: 0;
  }
}
.l-header__nav {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 500;
  font-size: 1.3rem;
}
@media only screen and (max-width: 1024px) {
  .l-header__nav {
    overflow-y: auto;
  }
}
.l-header__nav__list {
  display: flex;
  margin-top: 14px;
}
.l-header__nav__list b.-new {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  display: inline-block;
  position: relative;
  top: -1px;
  background: #fb9a00;
  padding: 2px 7px 4px;
  margin-left: 7px;
  border-radius: 30px;
}
@media screen and (min-width: 1025px) {
  .l-header__nav__list > li.-peculiar {
    background: #129fe8;
    border-radius: 3px;
  }
  .l-header__nav__list > li.-peculiar > a {
    color: #fff !important;
  }
}
.l-header__nav__list > li > a {
  position: relative;
  padding: 4px 10px 18px 10px;
  bottom: -2px;
}
.l-header__nav__list > li > a:hover {
  color: #0058aa;
}
.l-header__nav__list > li > a.is-active {
  color: #0058aa;
}
.l-header__nav__list > li > a.is-active::after {
  display: block;
  position: absolute;
  right: 0;
  bottom: 2px;
  left: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-width: 0 5px 8px 5px;
  border-style: solid;
  border-color: transparent transparent #0058aa transparent;
  content: "";
}
.l-header__nav__list > li.-contact {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .l-header__nav__list > li.-contact {
    display: block;
  }
}
@media screen and (min-width: 1025px) {
  .l-header__nav__list > li.-drop .-dropMenu {
    font-size: 1.5rem;
    position: absolute;
    top: 100px;
    left: 0;
    right: 0;
    z-index: -90;
    background: #fff;
    width: 100vw;
    min-width: 1025px;
    margin: 0 auto;
    padding: 30px 0 20px;
    opacity: 0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    visibility: hidden;
    pointer-events: none;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 60px;
    width: 800px;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1024px) {
  .l-header__nav__list > li.-drop .-dropMenu_wrap {
    display: block;
    width: 100%;
  }
}
@media screen and (min-width: 1025px) {
  .l-header__nav__list > li.-drop .-dropMenu_wrap .-sp {
    display: none;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col a {
    transition: 0.3s;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1024px) {
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col a {
    display: block;
    padding: 9px 0;
  }
}
@media screen and (min-width: 1025px) {
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col a:hover {
    color: #0058aa;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col h2 {
    font-weight: bold;
    margin-bottom: 10px;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > ul li {
    position: relative;
    margin-bottom: 10px;
  }
  .l-header__nav__list > li.-drop:hover > a {
    color: #0058aa;
  }
  .l-header__nav__list > li.-drop:hover .-dropMenu {
    opacity: 1;
    visibility: unset;
    z-index: 90;
    transition: opacity 0.3s;
    pointer-events: unset;
  }
}
@media only screen and (max-width: 1024px) {
  .l-header__nav__list {
    display: block;
    width: 90%;
    margin: 0 auto;
  }
  .l-header__nav__list > li {
    position: relative;
    margin-right: 0;
    padding-bottom: 0;
    border-bottom: 1px solid #e1eaf3;
  }
  .l-header__nav__list > li > a {
    display: block;
    bottom: auto;
    padding: 11px 0;
  }
  .l-header__nav__list > li > a.is-active::after {
    display: none;
  }
  .l-header__nav__list > li > a i {
    display: block;
    position: absolute;
    top: 0;
    right: 6px;
    bottom: 0;
    width: 12px;
    height: 19px;
    margin: auto;
  }
  .l-header__nav__list > li > a i::before {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    margin: auto;
    background: #aaa;
    content: "";
  }
  .l-header__nav__list > li > a i::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 7px;
    height: 7px;
    margin: auto;
    transform: rotate(45deg);
    border-top: 1px solid #aaa;
    border-right: 1px solid #aaa;
    content: "";
  }
  .l-header__nav__list > li > a.is-active i::before {
    background: #0058aa;
  }
  .l-header__nav__list > li > a.is-active i::after {
    border-top: 1px solid #0058aa;
    border-right: 1px solid #0058aa;
  }
  .l-header__nav__list > li.-drop .-dropMenu {
    display: none;
    font-size: 1.3rem;
    position: fixed;
    top: 50px;
    left: 0;
    background: #fff;
    width: 100%;
    height: calc(100% - 50px);
    padding: 0 5%;
    overflow-y: scroll;
    z-index: 900;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap {
    padding-bottom: 40px;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap .-sp {
    display: block;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap .-title {
    font-size: 1.8rem;
    padding: 15px 0px 10px;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap .-back {
    color: #0058aa;
    font-size: 1.3rem;
    text-align: center;
    position: relative;
    margin-top: 10px;
    padding: 5px 5px 5px 14px;
    width: 80px;
    border: 1px solid #0058aa;
    border-radius: 50px;
    cursor: pointer;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap .-back::before {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin: auto;
    border-left: 2px solid #0058aa;
    border-bottom: 2px solid #0058aa;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col {
    width: 100%;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col + .col {
    margin-left: 0;
    margin-top: 25px;
    width: 100%;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col + .col:last-of-type {
    margin-bottom: 5px;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col:last-of-type {
    margin-bottom: 5px;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > h2 {
    margin-bottom: 0;
    padding-top: 9px;
    padding-bottom: 9px;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > ul li {
    border-top: 1px solid #e1eaf3;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > ul li:last-of-type {
    border-bottom: 1px solid #e1eaf3;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > ul li a {
    display: block;
    padding: 9px 0;
    position: relative;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > ul li a i {
    display: block;
    position: absolute;
    top: 0;
    right: 6px;
    bottom: 0;
    width: 12px;
    height: 19px;
    margin: auto;
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > ul li a i::before {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    margin: auto;
    background: #aaa;
    content: "";
  }
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > ul li a i::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 7px;
    height: 7px;
    margin: auto;
    transform: rotate(45deg);
    border-top: 1px solid #aaa;
    border-right: 1px solid #aaa;
    content: "";
  }
}
@media only screen and (max-width: 1024px) and (max-width: 1024px) {
  .l-header__nav__list > li.-drop .-dropMenu_wrap > .col > ul li {
    border-top: 1px solid #e1eaf3;
  }
}
@media only screen and (max-width: 1024px) {
  .l-header__toggle {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 45px;
    height: 45px;
    cursor: pointer;
  }
  .l-header__toggle::before, .l-header__toggle::after {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 9px;
    height: 1px;
    margin: auto;
    background: #888;
    content: "";
  }
  .l-header__toggle::before {
    transform: rotate(0);
    opacity: 1;
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  }
  .l-header__toggle::after {
    transform: rotate(90deg);
    opacity: 1;
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  }
  .l-header__toggle.is-active {
    background: #e1eaf3;
  }
  .l-header__toggle.is-active::before {
    transform: rotate(90deg);
    opacity: 0;
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  }
  .l-header__toggle.is-active::after {
    transform: rotate(180deg);
    transition: transform 0.3s ease-in-out;
  }
}
.l-header__slideMenu {
  display: none;
  position: absolute;
  top: 30px;
  left: 50%;
  width: 220px;
  margin-left: -110px;
  padding: 8px 24px 12px;
  background: #0f4374;
  box-shadow: 0 4px 12px rgba(15, 67, 116, 0.3);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease-in-out;
}
.l-header__slideMenu.is-show {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.3s ease-in-out;
}
@media only screen and (max-width: 1024px) {
  .l-header__slideMenu {
    display: none;
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    margin-left: 0;
    padding: 0;
    background: #e1eaf3;
    box-shadow: none;
    opacity: 1;
    pointer-events: auto;
  }
  .l-header__slideMenu .is-on {
    display: block;
  }
}
.l-header__slideMenu__list > li > a {
  display: block;
  padding: 8px 0;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
  transition: border-bottom-color 0.3s ease-in-out, color 0.3s ease-in-out;
}
.l-header__slideMenu__list > li > a:hover {
  color: rgba(255, 255, 255, 0.6);
}
@media only screen and (max-width: 1024px) {
  .l-header__slideMenu__list > li > a {
    padding: 13px 45px 13px 16px;
    color: #333;
    text-align: left;
  }
  .l-header__slideMenu__list > li > a:hover {
    color: #0058aa;
  }
}
.l-header__subNav {
  display: flex;
  justify-content: flex-end;
}
@media only screen and (max-width: 1024px) {
  .l-header__subNav {
    justify-content: center;
    width: 90%;
    position: absolute;
    bottom: 62px;
    left: 0;
    right: 0;
    margin: auto;
  }
}
.l-header__contact {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 140px;
  height: 26px;
  border-radius: 13px;
  border: 1px solid #0058aa;
  font-size: 1.2rem;
  color: #0058aa;
  transition: color 0.3s ease-in-out, background 0.3s ease-in-out;
}
.l-header__contact > span {
  padding-left: 24px;
  background: url(/common/img/mail_ico.png) center left/15px 10px no-repeat;
}
.l-header__contact:hover {
  color: #fff;
  background: #0058aa;
  transition: color 0.3s ease-in-out, background 0.3s ease-in-out;
}
@media only screen and (max-width: 1024px) {
  .l-header__contact {
    width: 240px;
    height: 46px;
    border-radius: 23px;
    font-size: 1.4rem;
  }
}
.l-header__conversion {
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .l-header__conversion {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
  }
}
.l-header__conversion > li > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 98px;
  font-size: 1.3rem;
  position: relative;
  overflow: hidden;
}
.l-header__conversion > li > a::before {
  content: "";
  display: block;
  width: 200%;
  height: 100%;
  background: rgba(255, 255, 255, 0.16);
  transform: skewX(-45deg);
  position: absolute;
  top: 0;
  right: 150%;
  transition: right 0.3s ease-in-out;
}
.l-header__conversion > li > a > span {
  display: inline-block;
  padding-top: 36px;
  position: relative;
  z-index: 10;
}
.l-header__conversion > li > a:hover::before {
  right: -50%;
  transition: right 0.3s ease-in-out;
}
.l-header__conversion > li.-registration > a {
  background: #dff4ff;
  color: #0085ca;
}
.l-header__conversion > li.-registration > a::before {
  background: rgba(255, 255, 255, 0.4);
}
.l-header__conversion > li.-registration > a > span {
  background: url(/common/img/register_ico.png) center top/24px 28px no-repeat;
}
.is-login .l-header__conversion > li.-registration {
  display: none;
}

.l-header__conversion > li.-mypage > a {
  background: #dff4ff;
  color: #0085ca;
}
.l-header__conversion > li.-mypage > a > span {
  background: url(/common/img/mypage_ico.png) center top/28px 28px no-repeat;
}
.is-logout .l-header__conversion > li.-mypage {
  display: none;
}

.l-header__conversion > li.-login > a {
  background: #129fe8;
  color: #fff;
}
.l-header__conversion > li.-login > a > span {
  background: url(/common/img/login_ico.png) center top/26px 28px no-repeat;
}
.is-login .l-header__conversion > li.-login {
  display: none;
}

.l-header__conversion > li.-logout > a {
  background: #129fe8;
  color: #fff;
}
.l-header__conversion > li.-logout > a > span {
  background: url(/common/img/logout_ico.png) center top/26px 28px no-repeat;
}
.is-logout .l-header__conversion > li.-logout {
  display: none;
}

.l-header__conversion > li.-cart > a {
  background: #0058aa;
  color: #fff;
}
.l-header__conversion > li.-cart > a > span {
  background: url(/common/img/cart_ico.png) center top/29px 29px no-repeat;
}
.l-header__conversion > li.-cart > a > span i {
  display: flex;
  position: absolute;
  top: -6px;
  right: -6px;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fc0339;
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
}
@media only screen and (max-width: 1024px) {
  .l-header__conversion > li {
    width: 33%;
  }
  .l-header__conversion > li > a {
    width: 100%;
    height: 46px;
    font-size: 1.2rem;
  }
  .l-header__conversion > li > a > span {
    padding: 4px 0 4px 24px;
  }
  .l-header__conversion > li.-registration > a > span {
    background: url(/common/img/register_ico.png) center left/12px 14px no-repeat;
  }
  .l-header__conversion > li.-mypage > a > span {
    background: url(/common/img/mypage_ico.png) center left/14px 14px no-repeat;
  }
  .l-header__conversion > li.-login {
    width: 34%;
  }
  .l-header__conversion > li.-login > a > span {
    background: url(/common/img/login_ico.png) center left/13px 14px no-repeat;
  }
  .l-header__conversion > li.-logout {
    width: 34%;
  }
  .l-header__conversion > li.-logout > a > span {
    background: url(/common/img/logout_ico.png) center left/13px 14px no-repeat;
  }
  .l-header__conversion > li.-cart > a > span {
    background: url(/common/img/cart_ico.png) center left/14px 14px no-repeat;
    padding-left: 30px;
  }
  .l-header__conversion > li.-cart > a > span i {
    width: 16px;
    height: 16px;
    top: -2px;
    right: auto;
    left: 10px;
    font-weight: normal;
  }
}
.l-header__l {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .l-header__l {
    display: block;
  }
}
.is-hidden .l-header {
  top: 0 !important;
}

.l-inner, .l-inner--wide {
  width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .l-inner, .l-inner--wide {
    width: 90%;
  }
}
@media screen and (min-width: 1025px) {
  .l-inner--wide {
    width: 94%;
    max-width: 1200px;
    margin: 0 auto;
  }
}

.l-lines {
  width: 100%;
  min-width: 1140px;
  height: 100%;
  position: fixed;
  top: 0;
  z-index: -1;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .l-lines {
    min-width: inherit;
  }
}

.l-line, .l-line--7, .l-line--6, .l-line--5, .l-line--4, .l-line--3, .l-line--2, .l-line--1 {
  display: block;
  width: 1px;
  height: 100%;
  background: #f4f6f7;
  position: absolute;
  top: 0;
  left: 50%;
}
.l-line--1 {
  margin-left: -750px;
}
@media only screen and (max-width: 1024px) {
  .l-line--1 {
    display: none;
  }
}
.l-line--2 {
  margin-left: -500px;
}
@media only screen and (max-width: 1024px) {
  .l-line--2 {
    display: none;
  }
}
.l-line--3 {
  margin-left: -250px;
}
@media only screen and (max-width: 1024px) {
  .l-line--3 {
    margin-left: -45%;
  }
}
.l-line--4 {
  margin-left: 0;
}
.l-line--5 {
  margin-left: 250px;
}
@media only screen and (max-width: 1024px) {
  .l-line--5 {
    margin-left: 45%;
  }
}
.l-line--6 {
  margin-left: 500px;
}
@media only screen and (max-width: 1024px) {
  .l-line--6 {
    display: none;
  }
}
.l-line--7 {
  margin-left: 750px;
}
@media only screen and (max-width: 1024px) {
  .l-line--7 {
    display: none;
  }
}

.l-main {
  padding-bottom: 180px;
}
@media only screen and (max-width: 480px) {
  .l-main {
    padding-bottom: 120px;
  }
}

.l-mv {
  position: relative;
  width: 100%;
  height: 180px;
  margin-bottom: 60px;
  background: center/cover no-repeat;
  display: flex;
  align-items: center;
}
.l-mv::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(3, 68, 129, 0.3);
}
.l-mv .l-inner, .l-mv .l-inner--wide {
  display: flex;
  position: relative;
  z-index: 2;
}
.l-mv .l-lines {
  z-index: 0;
  position: absolute;
}
@media only screen and (max-width: 1024px) {
  .l-mv .l-lines {
    z-index: -1;
  }
}
.l-mv .l-line--6, .l-mv .l-line--7 {
  background: rgba(255, 255, 255, 0.04);
}
@media only screen and (max-width: 1024px) {
  .l-mv {
    margin-bottom: 40px;
  }
}
.l-mv__title {
  color: #fff;
  font-size: 3.2rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  padding: 20px 0;
}
[lang=ja] .l-mv__title {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .l-mv__title {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .l-mv__title {
  font-family: "Roboto", sans-serif;
}

.l-mv__title span {
  display: block;
  position: relative;
  margin-bottom: 6px;
  padding-left: 24px;
  font-family: montserrat, sans-serif;
  font-size: 1.4rem;
}
.l-mv__title span::before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 12px;
  height: 1px;
  margin: auto;
  background: #129fe8;
  content: "";
}
@media only screen and (max-width: 1024px) {
  .l-mv__title {
    font-size: 2.4rem;
  }
  .l-mv__title span {
    margin-bottom: 4px;
    padding-left: 16px;
    font-size: 1.2rem;
  }
  .l-mv__title span::before {
    width: 10px;
  }
}

.c-btn, .c-btn--line {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  display: block;
  padding: 12px 0;
  background: #0058aa;
  font-size: 1.4rem;
  text-align: center;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.c-btn::before, .c-btn--line::before {
  content: "";
  display: block;
  width: 160%;
  height: 100%;
  transform: skewX(-45deg);
  background: #129fe8;
  position: absolute;
  top: 0;
  right: calc(100% + 6px);
  transition: right 0.3s ease-in-out;
}
_:-ms-fullscreen, :root .c-btn::before, :root .c-btn--line::before {
  right: 103%;
}

.c-btn span, .c-btn--line span {
  display: inline-block;
  padding-right: 32px;
  color: #fff;
  letter-spacing: normal;
  position: relative;
  transition: color 0.3s ease-in-out;
}
.c-btn span i, .c-btn--line span i {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transition: right 0.3s ease-in-out;
  display: block;
  width: 17px;
  height: 13px;
}
.c-btn span i::before, .c-btn--line span i::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.c-btn span i::after, .c-btn--line span i::after {
  content: "";
  width: 9px;
  height: 9px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.c-btn span i.up::before, .c-btn--line span i.up::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 0;
  left: 4px;
  bottom: 0;
  margin: auto;
  transform: rotate(90deg);
}
.c-btn span i.up::after, .c-btn--line span i.up::after {
  content: "";
  width: 9px;
  height: 9px;
  border: none;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 7px;
  margin: auto;
}
.c-btn:hover::before, .c-btn--line:hover::before {
  right: -30px;
  transition: right 0.3s ease-in-out;
}
.c-btn:hover span i, .c-btn--line:hover span i {
  right: -4px;
  transition: right 0.3s ease-in-out;
}
.c-btn.-more span i, .-more.c-btn--line span i {
  width: 15px;
  height: 15px;
  background: url(/common/img/list_ico.gif) center no-repeat;
}
.c-btn.-more span i::before, .-more.c-btn--line span i::before, .c-btn.-more span i::after, .-more.c-btn--line span i::after {
  display: none;
}
.c-btn.-more:hover span i, .-more.c-btn--line:hover span i {
  width: 15px;
  height: 15px;
}
.c-btn.-blank span i, .-blank.c-btn--line span i {
  width: 13px;
  height: 11px;
}
.c-btn.-blank span i::before, .-blank.c-btn--line span i::before, .c-btn.-blank span i::after, .-blank.c-btn--line span i::after {
  width: 10px;
  height: 8px;
  transform: none;
  background: transparent;
}
.c-btn.-blank span i::before, .-blank.c-btn--line span i::before {
  border: 1px solid #fff;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
}
.c-btn.-blank span i::after, .-blank.c-btn--line span i::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  top: 0;
  right: 0;
  bottom: auto;
  left: auto;
}
@media only screen and (max-width: 768px) {
  .c-btn, .c-btn--line {
    padding: 13px 0;
  }
}
.c-btn.-red, .-red.c-btn--line {
  background: #c93a3a;
}
.c-btn.-red::before, .-red.c-btn--line::before {
  background: #8f2727;
}
.c-btn.-blue, .-blue.c-btn--line {
  background: #129fe8;
}
.c-btn.-blue::before, .-blue.c-btn--line::before {
  background: #0c6ea1;
}

.c-btn--line {
  border: 1px solid #fff;
  background: transparent;
}
.c-btn--line::before {
  background: #fff;
}
.c-btn--line:hover span {
  color: #0058aa;
  transition: color 0.3s ease-in-out;
}
.c-btn--line:hover span i {
  display: block;
  width: 17px;
  height: 13px;
  position: absolute;
}
.c-btn--line:hover span i::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.c-btn--line:hover span i::after {
  content: "";
  width: 9px;
  height: 9px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.c-btn--line.-more:hover span i {
  width: 15px;
  height: 15px;
  background: url(/common/img/list_ico_blue.gif) center no-repeat;
}

.c-column--gray {
  background: #f8f8f8;
  padding: 16px 24px;
}
.c-column--gray > .c-list--ol {
  padding-right: 0;
  padding-left: 16px;
}

.c-featurebox {
  display: flex;
  flex-flow: row wrap;
}
.c-featurebox > div {
  width: 50%;
  padding: 0 30px 20px 30px;
}
.c-featurebox > div dt {
  padding: 25px 0 22px 55px;
  font-size: 1.8rem;
}
@media only screen and (max-width: 600px) {
  .c-featurebox > div {
    width: 100%;
    padding: 0 20px 20px 20px;
  }
  .c-featurebox > div dt {
    font-size: 1.5rem;
  }
}
.c-featurebox.-blue .-feature02, .c-featurebox.-blue .-feature03 {
  background: #edf6fc;
}
.c-featurebox.-blue .-feature02 dt, .c-featurebox.-blue .-feature03 dt {
  color: #3f94bf;
}
.c-featurebox.-blue .-feature01, .c-featurebox.-blue .-feature04 {
  color: #fff;
  background: #3f94bf;
}
@media only screen and (max-width: 600px) {
  .c-featurebox.-blue .-feature03 {
    background: #3f94bf;
    color: #fff;
  }
  .c-featurebox.-blue .-feature03 dt {
    color: inherit;
  }
  .c-featurebox.-blue .-feature04 {
    color: #333;
    background: #edf6fc;
  }
  .c-featurebox.-blue .-feature04 dt {
    color: #3f94bf;
  }
}
.c-featurebox.-green .-feature02, .c-featurebox.-green .-feature03 {
  background: #ebf5f0;
}
.c-featurebox.-green .-feature02 dt, .c-featurebox.-green .-feature03 dt {
  color: #419da6;
}
.c-featurebox.-green .-feature01, .c-featurebox.-green .-feature04 {
  color: #fff;
  background: #419da6;
}
@media only screen and (max-width: 600px) {
  .c-featurebox.-green .-feature03 {
    background: #419da6;
    color: #fff;
  }
  .c-featurebox.-green .-feature03 dt {
    color: inherit;
  }
  .c-featurebox.-green .-feature04 {
    color: #333;
    background: #ebf5f0;
  }
  .c-featurebox.-green .-feature04 dt {
    color: #419da6;
  }
}

.c-fig {
  width: 100%;
  background: #fff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  text-align: center;
}
.c-fig__img {
  margin: 24px;
}
.c-fig__cap {
  padding: 12px;
  background: #f8f8f8;
  font-size: 1.2rem;
}

.c-section--btns .c-title--sec {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.c-section--btns .c-title--sec + .c-info {
  margin-top: 0;
}
.c-section--btns .c-title--sec + .c-info .c-info__list {
  margin-bottom: 0;
}
.c-section--btns .c-title--sec + .c-info .c-info__list + .-sectionBTN_bottom {
  margin-top: 25px;
}
.c-section--btns .-sectionBTN_top .c-btn, .c-section--btns .-sectionBTN_top .c-btn--line {
  width: 240px;
}
.c-section--btns .-sectionBTN_top .c-btn + .c-btn, .c-section--btns .-sectionBTN_top .c-btn--line + .c-btn, .c-section--btns .-sectionBTN_top .c-btn + .c-btn--line, .c-section--btns .-sectionBTN_top .c-btn--line + .c-btn--line {
  margin-left: 5px;
}
@media only screen and (max-width: 768px) {
  .c-section--btns .-sectionBTN_top {
    display: none;
  }
}
.c-section--btns .-sectionBTN_bottom {
  display: none;
}
@media only screen and (max-width: 768px) {
  .c-section--btns .-sectionBTN_bottom {
    display: block;
    margin-top: 30px;
  }
  .c-section--btns .-sectionBTN_bottom .c-btn, .c-section--btns .-sectionBTN_bottom .c-btn--line {
    max-width: unset;
  }
}
.c-section--btns.-nolist .-sectionBTN_top {
  display: none;
}
.c-section--btns.-nolist .-sectionBTN_bottom {
  display: block;
  margin-top: 25px;
}

.c-flex, .c-flex--rev {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.c-flex--rev {
  flex-direction: row-reverse;
}
@media only screen and (max-width: 600px) {
  .c-flex--rev {
    flex-direction: row;
  }
}

.c-flexbox, .c-flexbox--2, .c-flexbox--3, .c-flexbox--4, .c-flexbox--6 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.c-flexbox__item {
  margin-bottom: 40px;
}
@media only screen and (max-width: 768px) {
  .c-flexbox__item {
    margin-bottom: 24px;
  }
}
.c-flexbox--2 .c-flexbox__item {
  width: calc((100% - 40px) / 2);
}
@media only screen and (max-width: 768px) {
  .c-flexbox--2 .c-flexbox__item {
    width: calc((100% - 24px) / 2);
  }
}
@media only screen and (max-width: 480px) {
  .c-flexbox--2 .c-flexbox__item {
    width: 100%;
  }
}
.c-flexbox--3 .c-flexbox__item, .c-flexbox--3::after {
  width: calc((100% - 80px) / 3);
}
@media only screen and (max-width: 768px) {
  .c-flexbox--3 .c-flexbox__item, .c-flexbox--3::after {
    width: calc((100% - 48px) / 3);
  }
}
@media only screen and (max-width: 600px) {
  .c-flexbox--3 .c-flexbox__item, .c-flexbox--3::after {
    width: calc((100% - 24px) / 2);
  }
}
@media only screen and (max-width: 480px) {
  .c-flexbox--3 .c-flexbox__item, .c-flexbox--3::after {
    width: 100%;
  }
}
.c-flexbox--3::after {
  content: "";
  display: block;
}
.c-flexbox--4 .c-flexbox__item, .c-flexbox--4::before, .c-flexbox--4::after {
  width: calc((100% - 120px) / 4);
}
@media only screen and (max-width: 768px) {
  .c-flexbox--4 .c-flexbox__item, .c-flexbox--4::before, .c-flexbox--4::after {
    width: calc((100% - 72px) / 4);
  }
}
@media only screen and (max-width: 600px) {
  .c-flexbox--4 .c-flexbox__item, .c-flexbox--4::before, .c-flexbox--4::after {
    width: calc((100% - 24px) / 2);
  }
}
.c-flexbox--4::before, .c-flexbox--4::after {
  content: "";
  display: block;
}
.c-flexbox--4::before {
  order: 1;
}
.c-flexbox--6 .c-flexbox__item {
  width: calc((100% - 200px) / 6);
}
@media only screen and (max-width: 768px) {
  .c-flexbox--6 .c-flexbox__item {
    width: calc((100% - 80px) / 6);
  }
}
@media only screen and (max-width: 600px) {
  .c-flexbox--6 .c-flexbox__item {
    width: calc((100% - 48px) / 3);
  }
}
@media only screen and (max-width: 480px) {
  .c-flexbox--6 .c-flexbox__item {
    width: calc((100% - 24px) / 2);
  }
}

.c-form {
  width: 100%;
  margin-bottom: 40px;
  background: #edf6fc;
}
@media only screen and (max-width: 600px) {
  .c-form {
    margin-bottom: 24px;
  }
}
.c-form .is-error {
  width: 100%;
  margin-bottom: 8px;
  color: #fc0339;
}
.c-form th, .c-form td {
  padding: 16px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  line-height: 1.4;
}
.c-form th > span, .c-form td > span {
  display: inline-block;
}
.c-form th.-w250, .c-form td.-w250 {
  width: 250px;
}
.c-form th.-required, .c-form th.-option, .c-form td.-required, .c-form td.-option {
  width: 60px;
  padding-right: 0;
}
.c-form th.-required + td, .c-form th.-option + td, .c-form td.-required + td, .c-form td.-option + td {
  border-left: none;
}
.c-form th.-required > span, .c-form th.-option > span, .c-form td.-required > span, .c-form td.-option > span {
  padding: 4px 6px;
  background: #fc0339;
  color: #fff;
  font-size: 1.2rem;
}
[lang=zh] .c-form th.-required > span, [lang=zh] .c-form th.-option > span, [lang=zh] .c-form td.-required > span, [lang=zh] .c-form td.-option > span {
  white-space: nowrap;
}

@media only screen and (max-width: 600px) {
  .c-form th.-required, .c-form th.-option, .c-form td.-required, .c-form td.-option {
    padding: 0;
  }
  .c-form th.-required span, .c-form th.-option span, .c-form td.-required span, .c-form td.-option span {
    position: absolute;
    top: 8px;
    right: 12px;
  }
}
.c-form th.-option > span, .c-form td.-option > span {
  background: #aaa;
}
@media only screen and (max-width: 600px) {
  .c-form th.-empty, .c-form td.-empty {
    display: none;
  }
}
@media only screen and (max-width: 1024px) {
  .c-form th.-w250, .c-form td.-w250 {
    width: auto;
  }
}
@media only screen and (max-width: 768px) {
  .c-form th, .c-form td {
    padding: 12px;
  }
}
@media only screen and (max-width: 600px) {
  .c-form th, .c-form td {
    display: block;
    border-top: none;
    font-size: 1.2rem;
  }
}
.c-form th {
  background: #129fe8;
  color: #fff;
  font-weight: normal;
}
.c-form th .english {
  color: rgba(255, 255, 255, 0.6);
  font-size: 1.2rem;
}
.c-form td {
  padding: 16px 20px;
}
.c-form td input {
  width: 100%;
  padding: 8px 12px;
  border-radius: 3px;
  background: #fff;
  border: 1px solid #5e8dc9;
}
.c-form td input[type=submit] {
  background: #0058aa;
  color: #fff;
  transition: background 0.3s ease-in-out;
}
.c-form td input[type=submit]:hover {
  background: #0c3d6b;
  transition: background 0.3s ease-in-out;
}
.c-form td input[disabled] {
  background: #ccdded;
  cursor: default;
}
.c-form td textarea {
  width: 100%;
  padding: 8px 12px;
  border-radius: 3px;
  background: #fff;
  border: 1px solid #5e8dc9;
}
@media only screen and (max-width: 600px) {
  .c-form td {
    padding: 14px 14px 24px;
  }
  .c-form td.-send {
    padding-top: 0;
  }
  .c-form td input {
    padding: 12px 14px;
    font-size: 1.4rem;
  }
  .c-form td input[type=submit] {
    padding: 14px 16px;
  }
  .c-form td textarea {
    width: 100%;
    padding: 8px 12px;
    border-radius: 3px;
    background: #fff;
  }
}
.c-form__btnBox {
  display: flex;
  justify-content: center;
  margin-bottom: 24px;
}
@media only screen and (max-width: 768px) {
  .c-form__btnBox {
    display: block;
  }
}
.c-form__btn {
  display: block;
  position: relative;
  width: 100%;
  max-width: 250px;
  margin: 0 10px;
  padding: 12px 0;
  overflow: hidden;
  background: #0058aa;
  font-size: 1.4rem;
  text-align: center;
}
.c-form__btn::before {
  display: block;
  position: absolute;
  top: 0;
  right: calc(100% + 6px);
  width: 160%;
  height: 100%;
  transform: skewX(-45deg);
  background: #129fe8;
  content: "";
  transition: right 0.3s ease-in-out;
}
_:-ms-fullscreen, :root .c-form__btn::before {
  right: 103%;
}

.c-form__btn span {
  display: inline-block;
  position: relative;
  padding-right: 32px;
  color: #fff;
  transition: color 0.3s ease-in-out;
}
.c-form__btn span i {
  display: block;
  position: relative;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 17px;
  height: 13px;
  margin: auto;
  transition: right 0.3s ease-in-out;
}
.c-form__btn span i::before, .c-form__btn span i::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.c-form__btn span i::before {
  width: 100%;
  height: 1px;
  background: #fff;
}
.c-form__btn span i::after {
  width: 9px;
  height: 9px;
  transform: rotate(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
@media only screen and (max-width: 768px) {
  .c-form__btn {
    margin: 0 auto;
  }
  .c-form__btn + .c-form__btn {
    margin-top: 16px;
  }
}
.c-form__btn.login span i {
  display: block;
  width: 15px;
  height: 16px;
  background: url(/common/img/login_ico.png) center/contain no-repeat;
}
.c-form__btn.login span i::before, .c-form__btn.login span i::after {
  display: none;
}
.c-form__btn.-register span i {
  display: block;
  width: 15px;
  height: 16px;
  background: url(/common/img/register_ico_w.png) center/contain no-repeat;
}
.c-form__btn.-register span i::before, .c-form__btn.-register span i::after {
  display: none;
}
.c-form__btn:hover::before {
  right: -30px;
  transition: right 0.3s ease-in-out;
}
.c-form__btn:hover span i {
  right: -4px;
  transition: right 0.3s ease-in-out;
}
.c-form__selectwrap {
  display: inline-block;
  position: relative;
}
.c-form__selectwrap::after {
  display: block;
  position: absolute;
  top: 14px;
  right: 10px;
  width: 0;
  height: 0;
  border-width: 8px 6px 0 6px;
  border-style: solid;
  border-color: #0058aa transparent transparent transparent;
  content: "";
  pointer-events: none;
}
_:-ms-fullscreen, :root .c-form__selectwrap::after {
  top: 18px;
}

.c-form__selectwrap select {
  padding: 8px 24px 8px 12px;
  border-radius: 3px;
  background: #fff;
  border: 1px solid #5e8dc9;
  cursor: pointer;
}
.c-form__selectwrap select[disabled] {
  background: #ccdded;
  cursor: default;
  opacity: 1;
}
@media only screen and (max-width: 600px) {
  .c-form__selectwrap::after {
    top: 17px;
  }
  .c-form__selectwrap select {
    padding: 12px 24px 12px 16px;
    font-size: 1.4rem;
  }
}
.c-form__moreBtn {
  display: block;
  position: relative;
  width: 100%;
  max-width: 250px;
  margin: 0 auto 24px;
  padding: 12px 0;
  background: #aaa;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  cursor: pointer;
  transition: background 0.3s ease-in-out;
}
.c-form__moreBtn:hover {
  background: #777;
  transition: background 0.3s ease-in-out;
}
.c-form__moreBtn .-closeTxt {
  display: none;
}
.c-form__moreBtn.is-active {
  background: #777;
}
.c-form__moreBtn.is-active:hover {
  background: #aaa;
}
.c-form__moreBtn.is-active .-moreTxt {
  display: none;
}
.c-form__moreBtn.is-active .-closeTxt {
  display: inherit;
}

.agree {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 24px 0 40px;
}
.agree .required {
  margin-right: 16px;
  padding: 4px 6px;
  background: #fc0339;
  color: #fff;
  font-size: 1.2rem;
}
.agree > label {
  font-weight: bold;
  cursor: pointer;
  transition: color 0.3s ease-in-out;
}
.agree > label > input {
  margin-right: 4px;
}
.agree > label:hover {
  color: #129fe8;
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 600px) {
  .agree .required {
    margin-right: 12px;
    padding: 2px 4px;
    font-size: 1.1rem;
  }
  .agree > label > input {
    margin-right: 2px;
  }
}

.c-info {
  margin-top: 32px;
  padding: 16px 40px 40px;
  background: #ecf7ff;
  box-shadow: 0 6px 18px rgba(24, 125, 177, 0.2);
}
@media only screen and (max-width: 768px) {
  .c-info {
    margin-top: 24px;
    padding: 4px 16px 24px;
  }
}
.c-info-btn {
  padding-bottom: 16px;
  border-bottom: 1px solid #c0d9ee;
}
.c-info-btn .c-btn, .c-info-btn .c-btn--line {
  max-width: 270px !important;
  cursor: pointer;
}
@media only screen and (max-width: 768px) {
  .c-info-btn {
    padding-top: 6px;
    padding-bottom: 10px;
  }
}
.c-info__list {
  margin-bottom: 40px;
}
.c-info__list li > a {
  display: block;
  position: relative;
  padding: 20px 0 16px;
  border-bottom: 1px solid #c0d9ee;
  cursor: pointer;
}
.c-info__list li > a dl {
  position: relative;
}
.c-info__list li > a dl dt {
  color: #aaa;
  font-size: 1.2rem;
}
.c-info__list li > a dl dd {
  margin-top: 10px;
  transition: color 0.3s ease-in-out;
}
.c-info__list li > a .pdf {
  right: 3px;
  top: 0px;
}
.c-info__list li > a dl dd ul {
  display: flex;
  position: absolute;
  top: -3px;
  left: 80px;
  margin-bottom: 8px;
}
.c-info__list li > a dl dd ul li {
  padding: 3px 16px;
  border: 1px solid #136595;
  border-radius: 3px;
  background: #fff;
  color: #136595;
  font-size: 1.2rem;
}
.c-info__list li > a dl dd ul li + li {
  margin-left: 6px;
}
@media only screen and (max-width: 768px) {
  .c-info__list li > a dl dd ul {
    top: -2px;
  }
  .c-info__list li > a dl dd ul li {
    padding: 3px 8px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 480px) {
  .c-info__list li > a dl dd ul {
    position: relative;
    top: auto;
    left: auto;
    flex-wrap: wrap;
    margin-bottom: 4px;
  }
  .c-info__list li > a dl dd ul li {
    margin: 0 4px 4px 0;
  }
  .c-info__list li > a dl dd ul li + li {
    margin: 0 4px 4px 0;
  }
}
.c-info__list li > a:hover dl dd {
  color: #136595;
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 480px) {
  .c-info__list {
    margin-bottom: 24px;
  }
  .c-info__list li > a {
    padding: 12px 0 12px;
  }
  .c-info__list li > a .pdf {
    top: -2px;
  }
  .c-info__list li > a dl dd {
    margin-top: 6px;
  }
}
.c-info .c-btn, .c-info .c-btn--line {
  max-width: 250px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 600px) {
  .c-info .c-btn, .c-info .c-btn--line {
    width: 100%;
    max-width: none;
  }
}

.c-tile {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 30px;
  margin-top: -10px;
}
.c-tile li {
  width: calc((100% - 30px) / 3);
  margin: 10px 5px 0;
  border: 1px solid #c0d9ee;
}
@media only screen and (max-width: 768px) {
  .c-tile li {
    width: calc((100% - 20px) / 2);
  }
}
@media only screen and (max-width: 600px) {
  .c-tile li {
    width: 100%;
  }
  .c-tile li + li {
    margin-top: 10px;
  }
}
.c-tile li a {
  display: block;
  position: relative;
  background: #fff;
  height: 100%;
  padding: 51.4469453376% 15px 35px;
  transition: 0.3s;
}
.c-tile li a figure {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 311/160;
  overflow: hidden;
}
.c-tile li a figure img {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  transition: transform 0.3s;
}
.c-tile li a:hover {
  color: #136595;
  box-shadow: 0 0px 15px rgba(24, 125, 177, 0.4);
}
.c-tile li a:hover img {
  transform: scale(1.2);
}
.c-tile li a .-title {
  font-weight: bold;
  margin: 15px 0 10px;
}
.c-tile li a .-leading {
  font-size: 1.4rem;
  position: absolute;
  bottom: 10px;
  right: 15px;
  margin-top: 10px;
  padding-left: 20px;
}
.c-tile li a .-leading::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 0;
  bottom: 0;
  transform: rotate(-45deg);
  width: 7px;
  height: 7px;
  margin: auto;
  border-right: 2px solid #136595;
  border-bottom: 2px solid #136595;
}
@media only screen and (max-width: 768px) {
  .c-tile li a .-leading {
    font-size: 1.3rem;
  }
}

.c-progress {
  display: flex;
  justify-content: center;
}
.c-progress > li {
  color: #999;
  font-size: 1.4rem;
  text-align: center;
  width: 20%;
  position: relative;
  padding: 0 7px;
}
.c-progress > li i {
  color: #fff;
  font-family: montserrat, sans-serif;
  font-size: 2rem;
  font-weight: 900;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 3;
  background: #999;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  margin: 0 auto 10px;
}
@media only screen and (max-width: 768px) {
  .c-progress > li i {
    font-size: 1.6rem;
    width: 26px;
    height: 26px;
  }
  .c-progress > li span {
    display: none;
  }
}
.c-progress > li::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 12px;
  width: 100%;
  height: 3px;
  background: #999;
}
.c-progress > li:last-of-type::before {
  display: none;
}
.c-progress > li.-current {
  color: #0058aa;
  font-weight: bold;
}
.c-progress > li.-current i {
  background: #0058aa;
}
.c-progress > li.-current::before {
  background: #0058aa;
}

.c-list--ul {
  padding: 16px 24px;
  background: #f8f8f8;
}
.c-list--ul > li {
  position: relative;
  padding-left: 16px;
}
.c-list--ul > li::before {
  display: block;
  position: absolute;
  top: 12px;
  left: 0;
  width: 8px;
  height: 1px;
  background: #888;
  content: "";
}
.c-list--ul > li + li {
  margin-top: 12px;
}
@media only screen and (max-width: 768px) {
  .c-list--ul {
    padding: 12px 16px;
  }
  .c-list--ul > li {
    padding-left: 12px;
  }
  .c-list--ul > li::before {
    top: 10px;
    width: 6px;
  }
}
.c-list--ul.-anotate > li {
  padding-left: 1em;
  text-indent: -1em;
}
.c-list--ul.-anotate > li::before {
  display: none;
}
@media only screen and (max-width: 480px) {
  .c-list--ul.-anotate {
    font-size: 1.2rem;
  }
}
.c-list--ol {
  padding: 16px 24px 16px 40px;
  background: #f8f8f8;
}
.c-list--ol > li {
  list-style: decimal;
}
.c-list--ol.type-a > li {
  list-style-type: lower-alpha;
}
.c-list--ol > li + li {
  margin-top: 12px;
}
@media only screen and (max-width: 768px) {
  .c-list--ol {
    padding: 12px 16px 12px 32px;
  }
}
.c-list--note > li {
  position: relative;
  padding-left: 18px;
  color: #555;
  font-size: 1.4rem;
}
.c-list--note > li + li {
  margin-top: 8px;
}
.c-list--note > li::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}

.pdf {
  display: block;
  position: absolute;
  color: #0058aa !important;
  font-size: 1.2rem;
  text-align: center;
  cursor: pointer;
  font-family: montserrat, sans-serif;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: underline;
}
.pdf::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url("../img/pdf.svg") no-repeat center center;
  background-size: 16px 16px;
  vertical-align: middle;
  margin-right: 3px;
  margin-bottom: 2px;
}

.c-notice_wrap > dd, .c-notice_wrap a {
  font-size: 1.1rem;
  color: #129fe8;
  line-height: 1;
  text-align: center;
  border: 1px solid #129fe8;
  border-radius: 10px;
  padding: 2px 0;
  width: 77px;
  margin: 2px 0 2px 5px;
  background: #fff;
}

.c-sort {
  display: flex;
  position: relative;
  justify-content: space-between;
  margin-bottom: 40px;
}
.c-sort.-jc {
  justify-content: center;
}
@media only screen and (max-width: 1024px) {
  .c-sort {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.c-sort__issue {
  display: flex;
  width: 360px;
}
@media only screen and (max-width: 1024px) {
  .c-sort__issue {
    order: 1;
    width: 100%;
  }
}
.c-sort__issue > li {
  width: 50%;
}
.c-sort__issue > li > a {
  display: block;
  height: 40px;
  background: #e4eef8;
  color: #0058aa;
  font-size: 1.4rem;
  line-height: 40px;
  text-align: center;
}
.c-sort__issue > li > a span {
  display: inline-block;
  position: relative;
  padding-right: 20px;
}
.c-sort__issue > li > a span::after {
  display: block;
  position: absolute;
  top: 19px;
  right: 0;
  width: 7px;
  height: 7px;
  margin: auto;
  transform: rotate(45deg);
  border-top: 2px solid #0058aa;
  border-left: 2px solid #0058aa;
  content: "";
}
@media only screen and (max-width: 480px) {
  .c-sort__issue > li > a {
    font-size: 1.2rem;
  }
  .c-sort__issue > li > a span {
    padding-right: 16px;
  }
}
.c-sort__issue > li > a.is-active {
  background: #0058aa;
  color: #fff;
}
.c-sort__issue > li > a.is-active span::after {
  top: 15px;
  transform: rotate(-135deg);
  border-color: #fff;
}
.c-sort__cat {
  display: none;
  z-index: 20;
  position: absolute;
  top: 40px;
  left: 0;
  width: 100%;
  padding: 32px 32px 40px;
  background: #f2f2f2;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}
@media only screen and (max-width: 1024px) {
  .c-sort__cat {
    padding: 20px 3%;
  }
}
.c-sort__cat__list {
  display: flex;
  position: relative;
  flex-wrap: wrap;
}
.c-sort__cat__list > li {
  width: calc((100% - 48px) / 4);
  margin: 0 16px 16px 0;
}
.c-sort__cat__list > li:nth-child(4n) {
  margin-right: 0;
}
.c-sort__cat__list > li.-all {
  position: absolute;
  right: 0;
  bottom: 0;
  margin-right: 0;
}
.c-sort__cat__list > li.-all a {
  border: 1px solid #0058aa;
}
@media only screen and (max-width: 1024px) {
  .c-sort__cat__list > li {
    width: 49%;
    margin: 0 2% 12px 0;
  }
  .c-sort__cat__list > li:nth-child(2n) {
    margin-right: 0;
  }
  .c-sort__cat__list > li.-all {
    position: relative;
    width: 100%;
  }
}
.c-sort__cat__list > li a {
  display: block;
  position: relative;
  height: 36px;
  padding: 0 32px 0 16px;
  border-radius: 18px;
  background: #fff;
  font-size: 1.4rem;
  line-height: 36px;
}
.c-sort__cat__list > li a::after {
  display: none;
  position: absolute;
  top: 12px;
  right: 12px;
  width: 10px;
  height: 7px;
  margin: auto;
  transform: rotate(-45deg);
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  content: "";
}
.c-sort__cat__list > li a.-small {
  font-size: 1.2rem;
}
.c-sort__cat__list > li a:hover {
  background: #0058aa;
  color: #fff;
}
.c-sort__cat__list > li a.is-active {
  background: #0058aa;
  color: #fff;
}
.c-sort__cat__list > li a.is-active::after {
  display: block;
}
.c-sort__cat__list.date_list li {
  position: relative;
}
.c-sort__cat__list.date_list li input {
  display: block;
  position: relative;
  height: 36px;
  padding: 0 32px 0 16px;
  border-radius: 18px;
  background: #fff;
  font-size: 1.4rem;
  line-height: 36px;
  width: 100%;
}
.c-sort__cat__list.date_list li input::-webkit-input-placeholder {
  color: #333;
}
.c-sort__cat__list.date_list li input::-moz-placeholder {
  color: #333;
  opacity: 1;
}
.c-sort__cat__list.date_list li input:-ms-input-placeholder, .c-sort__cat__list.date_list li input::-ms-input-placeholder {
  color: #333;
}
.c-sort__cat__list.date_list .date_list_guide_sp {
  color: #129fe8;
  font-size: 1.2rem;
  display: none;
  position: absolute;
  left: 0;
  bottom: 98%;
  z-index: 2;
  padding: 1px 10px;
}
@media only screen and (max-width: 1024px) {
  .c-sort__cat__list.date_list .date_list_guide_sp {
    display: block;
  }
}
.c-sort__cat__list.date_list .date_list_guide_pc {
  padding-left: 8px;
  font-size: 1.4rem;
  line-height: 36px;
}
@media only screen and (max-width: 1024px) {
  .c-sort__cat__list.date_list .date_list_guide_pc {
    display: none;
  }
}
@media only screen and (max-width: 1024px) {
  .c-sort__cat__list > li a, .c-sort__cat__list.date_list li input {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 12px 24px 12px 12px;
    border-radius: 20px;
    font-size: 1.2rem;
    line-height: 1.2;
  }
  .c-sort__cat__list > li a::after {
    top: 50%;
    width: 8px;
    height: 5px;
    margin-top: -4px;
  }
  .c-sort__cat__list.date_list {
    margin-top: 23px;
  }
  .c-sort__cat__list.date_list > li:nth-child(2n):not(.-all) {
    margin-right: 2%;
  }
  .c-sort__cat__list.date_list > li:nth-child(odd) {
    margin-right: 0;
  }
}
.c-sort__cat__list + .c-sort__cat__list {
  margin-top: 16px;
}
.c-sort__cat__list__name {
  color: #136595;
  font-size: 1.4rem;
  font-weight: bold;
  display: flex;
  justify-content: space-between;
  flex-flow: row nowrap;
  align-items: center;
  margin-bottom: 10px;
  margin-left: 8px;
}
.c-sort__cat__list__name::after {
  content: "";
  display: inline-block;
  flex-grow: 1;
  border-top: 1px dotted #136595;
  margin-left: 10px;
}
@media only screen and (max-width: 1024px) {
  .c-sort__cat__list__name {
    font-size: 1.3rem;
  }
}
.c-sort__cat__list__name ~ .c-sort__cat__list__name {
  margin-top: 10px;
}
.c-sort__cat__search {
  display: flex;
  justify-content: space-between;
  margin-top: 16px;
  padding: 16px;
  background: url(/report/parts/img/slash-bg.gif);
}
.c-sort__cat__search__input {
  display: block;
  position: relative;
  width: calc(100% - 250px - 16px);
}
.c-sort__cat__search__input input[type=text] {
  width: 100%;
  padding: 10px 20px;
  border-radius: 4px;
  background: #fff;
}
.c-sort__cat__search__input a {
  display: block;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  width: 24px;
  height: 24px;
  margin: auto;
  border-radius: 50%;
  background: #111;
  cursor: pointer;
}
.c-sort__cat__search__input a::before, .c-sort__cat__search__input a::after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 11px;
  height: 1px;
  margin: auto;
  background: #fff;
  content: "";
}
.c-sort__cat__search__input a::before {
  transform: rotate(-45deg);
}
.c-sort__cat__search__input a::after {
  transform: rotate(45deg);
}
.c-sort__cat__search button[type=submit] {
  position: relative;
  width: 250px;
  overflow: hidden;
  background: #0058aa;
  color: #fff;
}
.c-sort__cat__search button[type=submit]::before {
  display: block;
  position: absolute;
  top: 0;
  right: calc(100% + 6px);
  width: 160%;
  height: 100%;
  transform: skewX(-45deg);
  background: #129fe8;
  content: "";
  transition: right 0.3s ease-in-out;
}
.c-sort__cat__search button[type=submit] span {
  display: inline-block;
  position: relative;
  padding-right: 32px;
}
.c-sort__cat__search button[type=submit] span::after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 16px;
  height: 15px;
  margin: auto;
  background: url(/report/parts/img/search_ico.png) center/contain no-repeat;
  content: "";
}
.c-sort__cat__search button[type=submit]:hover::before {
  right: -30px;
  transition: right 0.3s ease-in-out;
}
@media only screen and (max-width: 1024px) {
  .c-sort__cat__search {
    flex-wrap: wrap;
    justify-content: center;
    padding: 10px;
  }
  .c-sort__cat__search__input {
    width: 100%;
  }
  .c-sort__cat__search__input input[type=text] {
    padding: 12px 16px;
  }
  .c-sort__cat__search button[type=submit] {
    margin-top: 12px;
    width: 100%;
    padding: 12px;
  }
}

.c-table {
  width: 100%;
  background: #edf6fc;
}
.c-table th, .c-table td {
  padding: 16px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  line-height: 1.4;
}
.c-table th {
  background: #129fe8;
  color: #fff;
  font-weight: normal;
}
.c-table td > a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out;
}
.c-table td > a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .c-table th, .c-table td {
    padding: 12px;
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 480px) {
  .c-table th, .c-table td {
    padding: 8px;
  }
}
@media only screen and (max-width: 600px) {
  .c-table-wrap {
    padding-bottom: 3px;
    overflow-x: auto;
  }
  .c-table-wrap .c-table {
    min-width: 600px;
  }
}
.c-table__simple {
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
.c-table__simple caption {
  font-weight: bold;
  text-align: left;
  margin-bottom: 8px;
}
.c-table__simple th {
  font-weight: normal;
  text-align: center;
}
.c-table__simple th, .c-table__simple td {
  padding: 5px;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}

.c-title--l {
  margin-bottom: 24px;
  font-size: 4.2rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}
[lang=ja] .c-title--l {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .c-title--l {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .c-title--l {
  font-family: "Roboto", sans-serif;
}

.c-title--l span {
  display: block;
  position: relative;
  margin-bottom: 6px;
  padding-left: 24px;
  color: #129fe8;
  font-family: montserrat, sans-serif;
  font-size: 1.4rem;
}
.c-title--l span::before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 12px;
  height: 1px;
  margin: auto;
  background: #129fe8;
  content: "";
}
@media only screen and (max-width: 768px) {
  .c-title--l {
    margin-bottom: 20px;
    font-size: 2.8rem;
    letter-spacing: 0.06em;
  }
  .c-title--l span {
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 480px) {
  .c-title--l {
    margin-bottom: 16px;
    font-size: 2.4rem;
    letter-spacing: 0.04em;
  }
  .c-title--l span {
    margin-bottom: 2px;
  }
}

.c-title--m {
  margin-bottom: 24px;
  padding-left: 16px;
  border-left: 1px solid #0058aa;
  color: #0058aa;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.4;
}
[lang=ja] .c-title--m {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .c-title--m {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .c-title--m {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 768px) {
  .c-title--m {
    margin-bottom: 16px;
    padding-left: 12px;
    font-size: 2.4rem;
    letter-spacing: 0.04em;
  }
}
@media only screen and (max-width: 480px) {
  .c-title--m {
    font-size: 2.2rem;
  }
}

.c-title--s {
  margin-bottom: 16px;
  color: #000;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.06em;
  line-height: 1.4;
}
[lang=ja] .c-title--s {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .c-title--s {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .c-title--s {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 768px) {
  .c-title--s {
    margin-bottom: 14px;
    font-size: 1.8rem;
    letter-spacing: 0.024em;
  }
}
.c-title--s.-blue {
  color: #0058aa;
  font-size: 2.5rem;
  margin-bottom: 24px;
}
@media only screen and (max-width: 768px) {
  .c-title--s.-blue {
    font-size: 2.1rem;
    margin-bottom: 16px;
  }
}

.c-title--sec {
  color: #0058aa;
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-bottom: 24px;
}
@media only screen and (max-width: 768px) {
  .c-title--sec {
    font-size: 2.3rem;
    margin-bottom: 20px;
  }
}

.c-title--flex {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.c-title--flex .c-btn, .c-title--flex .c-btn--line {
  width: 250px;
}
@media only screen and (max-width: 768px) {
  .c-title--flex {
    flex-flow: row wrap;
    margin-bottom: 16px;
  }
  .c-title--flex .c-btn, .c-title--flex .c-btn--line {
    width: 100%;
  }
}

.c-youtube {
  text-align: center;
  position: relative;
  padding-bottom: 56.3%;
  margin-bottom: 24px;
}
.c-youtube img {
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
}
.c-youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
@media only screen and (max-width: 600px) {
  .c-youtube .youtube {
    float: none;
    width: 100%;
    padding-bottom: 56.25%;
    margin-left: 0;
    margin-bottom: 15px;
  }
}

.pager {
  display: flex;
}
.pager li {
  position: relative;
  cursor: pointer;
}
.pager--latest {
  width: 40px;
  height: 40px;
  background: #027bc7;
}
.pager--latest::before, .pager--latest::after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transform: rotate(-45deg);
}
.pager--latest::before {
  left: -4px;
}
.pager--latest::after {
  left: 6px;
}
.pager--prev {
  width: 40px;
  height: 40px;
  background: #0a8adb;
}
.pager--prev::after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transform: rotate(-45deg);
}
.pager--current {
  width: 72px;
  background: #129fe8;
  color: #fff;
  font-size: 1.4rem;
  line-height: 40px;
  text-align: center;
  cursor: default !important;
}
.pager--next {
  width: 40px;
  height: 40px;
  background: #0a8adb;
}
.pager--next::after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transform: rotate(135deg);
}
.pager--last {
  width: 40px;
  height: 40px;
  background: #027bc7;
}
.pager--last::before, .pager--last::after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transform: rotate(135deg);
}
.pager--last::before {
  left: 4px;
}
.pager--last::after {
  left: -6px;
}
.pager.-bottom {
  margin-top: 20px;
}

.p-404 .l-mv {
  background-image: url(/404/parts/img/mv.jpg);
}
.p-404 .l-article > p > .c-btn, .p-404 .l-article > p > .c-btn--line {
  max-width: 250px;
}
@media only screen and (max-width: 600px) {
  .p-404 .l-article > p > .c-btn, .p-404 .l-article > p > .c-btn--line {
    width: 100%;
    max-width: none;
  }
}

.p-academia .l-mv {
  background-image: url(/academia/parts/img/mv.jpg);
}
.p-academia .l-mv::before {
  display: none;
}
.p-academia__img {
  margin: 0;
}
@media only screen and (max-width: 600px) {
  .p-academia__img {
    flex-direction: column;
  }
}
@media only screen and (max-width: 600px) {
  .p-academia__img .c-flexbox__item {
    width: 100%;
  }
  .p-academia__img .c-flexbox__item:first-of-type {
    margin-bottom: 16px;
  }
}
.p-academia .l-main p {
  margin-bottom: 16px;
}
.p-academia__note {
  font-size: 1.4rem;
  color: #9b9b9b;
}
@media only screen and (max-width: 600px) {
  .p-academia__note {
    font-size: 1.2rem;
  }
}
.p-academia__inquiry {
  margin: 40px auto 80px !important;
}
@media only screen and (max-width: 1024px) {
  .p-academia__inquiry {
    margin: 40px auto 64px !important;
  }
}
@media only screen and (max-width: 768px) {
  .p-academia__inquiry {
    margin: 24px auto 40px !important;
  }
}
.p-academia__inquiry .c-flexbox__item {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: calc((100% - 24px) / 2);
  margin-bottom: 0;
  padding: 12px 16px 20px;
  overflow: hidden;
  background: #0058aa;
  color: #fff;
  text-align: center;
}
.p-academia__inquiry .c-flexbox__item::before {
  display: block;
  position: absolute;
  top: 0;
  right: 107%;
  width: 160%;
  height: 100%;
  transform: skewX(-45deg);
  background: #129fe8;
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-academia__inquiry .c-flexbox__item.p-academia__inquiry__tel {
  background: #555;
  cursor: default;
  pointer-events: none;
}
.p-academia__inquiry .c-flexbox__item.p-academia__inquiry__tel::before {
  display: none;
}
.p-academia__inquiry .c-flexbox__item.p-academia__inquiry__tel.is-sp {
  background: #0058aa;
  cursor: pointer;
  pointer-events: auto;
}
.p-academia__inquiry .c-flexbox__item.p-academia__inquiry__tel.is-sp::before {
  display: block;
}
@media only screen and (max-width: 480px) {
  .p-academia__inquiry .c-flexbox__item.p-academia__inquiry__tel {
    padding: 10px 16px 16px;
  }
}
@media only screen and (max-width: 480px) {
  .p-academia__inquiry .c-flexbox__item.p-academia__inquiry__form {
    margin-top: 12px;
    padding: 14px 16px 14px;
  }
  .p-academia__inquiry .c-flexbox__item.p-academia__inquiry__form::before {
    right: 102%;
  }
}
@media only screen and (max-width: 600px) {
  .p-academia__inquiry .c-flexbox__item {
    width: calc((100% - 12px) / 2);
  }
}
@media only screen and (max-width: 480px) {
  .p-academia__inquiry .c-flexbox__item {
    width: 100%;
  }
}
.p-academia__inquiry .c-flexbox__item dl {
  position: relative;
}
.p-academia__inquiry .c-flexbox__item dl dt {
  font-size: 2.4rem;
  font-weight: bold;
}
.p-academia__inquiry .c-flexbox__item dl dd {
  font-size: 1.2rem;
  line-height: 1.4;
}
@media only screen and (max-width: 600px) {
  .p-academia__inquiry .c-flexbox__item dl dt {
    font-size: 2rem;
  }
  .p-academia__inquiry .c-flexbox__item dl dd {
    font-size: 1.1rem;
  }
}
.p-academia__inquiry .c-flexbox__item span {
  position: relative;
  font-weight: bold;
}
.p-academia__inquiry .c-flexbox__item:hover::before {
  right: -20%;
  transition: right 0.3s ease-in-out;
}
.p-academia__box {
  margin-top: 40px;
  overflow: hidden;
  border-radius: 3px;
  background: #eff3f6;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
}
.p-academia__box h3 {
  padding: 10px 24px;
  background: #46515c;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
}
.p-academia__box > div {
  padding: 20px 24px 30px;
}
@media only screen and (max-width: 1024px) {
  .p-academia__box > div {
    padding: 16px 3% 24px;
  }
}
.p-academia__overview-list {
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #d5dfe6;
}
.p-academia__overview-list__item {
  margin-bottom: 4px;
}
.p-academia__overview-list__item a {
  display: block;
  position: relative;
  padding: 12px 48px 12px 16px;
  overflow: hidden;
  border-radius: 3px;
  background: #fff;
}
@media only screen and (max-width: 1024px) {
  .p-academia__overview-list__item a {
    font-size: 1.2rem;
  }
}
.p-academia__overview-list__item a::before {
  display: block;
  position: absolute;
  top: 0;
  right: 120%;
  width: 200%;
  height: 100%;
  transform: skewX(-45deg);
  background: rgba(0, 0, 0, 0.08);
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-academia__overview-list__item a i {
  display: block;
  position: relative;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  width: 12px;
  height: 19px;
  margin: auto;
  transition: right 0.3s ease-in-out;
}
.p-academia__overview-list__item a i::before, .p-academia__overview-list__item a i::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.p-academia__overview-list__item a i::before {
  width: 100%;
  height: 1px;
  background: #ccc;
}
.p-academia__overview-list__item a i::after {
  right: 0;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
.p-academia__overview-list__item a:hover::before {
  right: -20%;
  transition: right 0.3s ease-in-out;
}
.p-academia__overview-list__item a:hover i {
  right: 16px;
  transition: right 0.3s ease-in-out;
}
.p-academia__market-list {
  display: flex;
  position: relative;
  flex-wrap: wrap;
}
.p-academia__market-list__item {
  width: calc((100% - 16px) / 3);
  margin: 0 8px 8px 0;
}
.p-academia__market-list__item:nth-child(3n) {
  margin-right: 0;
}
.p-academia__market-list__item a {
  display: block;
  position: relative;
  height: 40px;
  padding: 0 16px;
  border-radius: 20px;
  background: #fff;
  font-size: 1.4rem;
  line-height: 40px;
  transition: background 0.3s ease-in-out, color 0.3s ease-in-out;
}
.p-academia__market-list__item a:hover {
  background: #0058aa;
  color: #fff;
  transition: background 0.3s ease-in-out, color 0.3s ease-in-out;
}
@media only screen and (max-width: 1024px) {
  .p-academia__market-list__item {
    width: 49%;
    margin: 0 2% 12px 0;
  }
  .p-academia__market-list__item:nth-child(3n) {
    margin-right: 2%;
  }
  .p-academia__market-list__item:nth-child(2n) {
    margin-right: 0;
  }
  .p-academia__market-list__item a {
    display: flex;
    align-items: center;
    height: 100%;
    padding: 12px;
    border-radius: 20px;
    font-size: 1.2rem;
    line-height: 1.2;
  }
}
.p-academia .materials {
  margin-top: 56px;
}
.p-academia .c-info {
  margin-top: 16px;
}
.p-academia .c-info__list {
  margin-bottom: 0;
}

.p-contact:not(.-message) .l-mv {
  background-image: url(/contact/parts/img/mv.jpg);
}
.p-contact:not(.-message) .l-mv::before {
  display: none;
}
.p-contact.-message .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-contact .is-error {
  width: 100%;
  margin-bottom: 8px;
  color: #fc0339;
}
.p-contact #company_else {
  display: none;
}
.p-contact .c-btn.-w400, .p-contact .-w400.c-btn--line {
  max-width: 400px;
}
.p-contact .c-btn.-w400, .p-contact .-w400.c-btn--line {
  max-width: 400px;
}
@media only screen and (max-width: 600px) {
  .p-contact .c-btn.-w400, .p-contact .-w400.c-btn--line {
    max-width: none;
  }
}

.p-group .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-group__about .c-flexbox--2 {
  margin-top: 40px;
}
.p-group__about .c-flexbox--2 figure {
  text-align: right;
}
@media only screen and (max-width: 768px) {
  .p-group__about .c-flexbox--2 {
    flex-direction: column-reverse;
  }
  .p-group__about .c-flexbox--2 .c-flexbox__item {
    width: 100%;
  }
  .p-group__about .c-flexbox--2 .c-flexbox__item figure {
    text-align: center;
  }
}
.p-group__each {
  background: rgba(94, 152, 200, 0.07);
  padding: 50px 0;
  margin-top: 20px;
}
@media only screen and (max-width: 600px) {
  .p-group__each {
    padding: 40px 0;
  }
}
.p-group__each ul {
  display: flex;
  flex-flow: row wrap;
}
.p-group__each ul li {
  position: relative;
  width: calc(50% - 20px);
  margin: 10px;
  box-shadow: 0 0px 18px rgba(24, 125, 177, 0.2);
  overflow: hidden;
}
.p-group__each ul li a {
  display: block;
  height: 100%;
  padding: 20px 25px;
  background: url("/group/parts/img/group_bg.gif");
  transition: 0.3s;
}
.p-group__each ul li a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 100%;
  width: 100%;
  height: 100%;
  background: #136595;
  transition: 0.3s;
}
.p-group__each ul li a .company {
  color: #136595;
  font-size: 2rem;
  position: relative;
  margin-bottom: 15px;
  padding-bottom: 15px;
  padding-right: 10px;
  transition: 0.4s;
}
[lang=ja] .p-group__each ul li a .company {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-group__each ul li a .company {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-group__each ul li a .company {
  font-family: "Roboto", sans-serif;
}

.p-group__each ul li a .company::before, .p-group__each ul li a .company::after {
  content: "";
  display: block;
  position: absolute;
}
.p-group__each ul li a .company::before {
  width: 12px;
  height: 12px;
  border-top: 2px solid rgba(94, 152, 200, 0.9);
  border-right: 2px solid rgba(94, 152, 200, 0.9);
  top: 20px;
  right: 0;
  transform: rotate(45deg);
}
.p-group__each ul li a .company::after {
  background: rgba(94, 152, 200, 0.5);
  width: 30px;
  height: 1px;
  left: 0;
  bottom: 0;
}
.p-group__each ul li a .company span {
  font-family: montserrat, sans-serif;
  color: rgba(94, 152, 200, 0.9);
  font-size: 1.2rem;
  display: block;
  margin-bottom: 5px;
  transition: 0.4s;
}
@media only screen and (max-width: 768px) {
  .p-group__each ul li a .company {
    font-size: 1.8rem;
  }
}
.p-group__each ul li a p {
  position: relative;
  z-index: 2;
}
.p-group__each ul li a:hover {
  box-shadow: 0 8px 24px rgba(24, 125, 177, 0.4);
}
.p-group__each ul li a:hover::before {
  right: 0;
}
.p-group__each ul li a:hover * {
  color: #fff;
}
.p-group__each ul li a:hover .company span {
  color: #fff;
}
.p-group__each ul li a:hover .company::after {
  background: #fff;
}
.p-group__each ul li a:hover .company::before {
  border-color: #fff;
}
@media only screen and (max-width: 600px) {
  .p-group__each ul li {
    width: 100%;
  }
}
.p-group__profile_flex {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-bottom: 15px;
}
@media only screen and (max-width: 1024px) {
  .p-group__profile_flex {
    margin-bottom: 20px;
    justify-content: space-between;
  }
}
.p-group__profile_flex p {
  width: 48px;
  margin-right: 20px;
}
@media only screen and (max-width: 768px) {
  .p-group__profile_flex p {
    width: calc(20% - 8px);
    margin-right: 0;
  }
}
.p-group__profile_flex--btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 460px;
}
@media only screen and (max-width: 1024px) {
  .p-group__profile_flex--btn {
    width: calc(100% - 68px);
  }
}
@media only screen and (max-width: 768px) {
  .p-group__profile_flex--btn {
    flex-direction: column;
    width: calc(80% - 8px);
  }
}
.p-group__profile_flex--btn .c-btn:nth-of-type(1), .p-group__profile_flex--btn .c-btn--line:nth-of-type(1) {
  width: 180px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 1024px) {
  .p-group__profile_flex--btn .c-btn:nth-of-type(1), .p-group__profile_flex--btn .c-btn--line:nth-of-type(1) {
    width: calc((100% - 20px) / 2);
  }
}
@media only screen and (max-width: 768px) {
  .p-group__profile_flex--btn .c-btn:nth-of-type(1), .p-group__profile_flex--btn .c-btn--line:nth-of-type(1) {
    width: 100%;
    margin-bottom: 8px;
  }
}
.p-group__profile_flex--btn .c-btn:nth-of-type(2), .p-group__profile_flex--btn .c-btn--line:nth-of-type(2) {
  width: 260px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 1024px) {
  .p-group__profile_flex--btn .c-btn:nth-of-type(2), .p-group__profile_flex--btn .c-btn--line:nth-of-type(2) {
    width: calc((100% - 20px) / 2);
  }
}
@media only screen and (max-width: 768px) {
  .p-group__profile_flex--btn .c-btn:nth-of-type(2), .p-group__profile_flex--btn .c-btn--line:nth-of-type(2) {
    width: 100%;
  }
}
.p-group__profile_flex--btn02 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 460px;
}
@media only screen and (max-width: 1024px) {
  .p-group__profile_flex--btn02 {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .p-group__profile_flex--btn02 {
    flex-direction: column;
  }
}
.p-group__profile_flex--btn02 .c-btn:nth-of-type(1), .p-group__profile_flex--btn02 .c-btn--line:nth-of-type(1) {
  width: 180px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 1024px) {
  .p-group__profile_flex--btn02 .c-btn:nth-of-type(1), .p-group__profile_flex--btn02 .c-btn--line:nth-of-type(1) {
    width: calc((100% - 40px) / 2);
    margin: 0;
  }
}
@media only screen and (max-width: 768px) {
  .p-group__profile_flex--btn02 .c-btn:nth-of-type(1), .p-group__profile_flex--btn02 .c-btn--line:nth-of-type(1) {
    width: 100%;
    margin-bottom: 8px;
  }
}
.p-group__profile_flex--btn02 .c-btn:nth-of-type(2), .p-group__profile_flex--btn02 .c-btn--line:nth-of-type(2) {
  width: 260px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 1024px) {
  .p-group__profile_flex--btn02 .c-btn:nth-of-type(2), .p-group__profile_flex--btn02 .c-btn--line:nth-of-type(2) {
    width: calc((100% - 40px) / 2);
  }
}
@media only screen and (max-width: 768px) {
  .p-group__profile_flex--btn02 .c-btn:nth-of-type(2), .p-group__profile_flex--btn02 .c-btn--line:nth-of-type(2) {
    width: 100%;
  }
}
.p-group__profile_table th {
  width: 20%;
}
@media only screen and (max-width: 600px) {
  .p-group__profile_table th {
    width: 94px;
  }
}
.p-group__profile_table--map {
  align-items: center;
}
@media only screen and (max-width: 600px) {
  .p-group__profile_table--map {
    flex-direction: column;
    align-items: inherit;
  }
}
.p-group__profile_table--map p {
  width: calc(70% - 8px);
}
@media only screen and (max-width: 600px) {
  .p-group__profile_table--map p {
    width: 100%;
  }
}
.p-group__profile_table--map span {
  font-weight: 600;
}
.p-group__profile_table--map .c-btn, .p-group__profile_table--map .c-btn--line {
  width: calc(30% - 8px);
}
@media only screen and (max-width: 600px) {
  .p-group__profile_table--map .c-btn, .p-group__profile_table--map .c-btn--line {
    width: 100%;
    margin: 24px 0 0 0;
  }
}
.p-group__profile_table--role {
  width: 400px;
}
@media only screen and (max-width: 768px) {
  .p-group__profile_table--role {
    width: 100%;
  }
}
.p-group__profile_table--role dt, .p-group__profile_table--role dd {
  width: calc((100% - 32px) / 2);
}
@media only screen and (max-width: 600px) {
  .p-group__profile_table--office {
    flex-direction: column;
  }
}
.p-group__profile_table--office dt {
  width: calc(20% - 8px);
}
@media only screen and (max-width: 600px) {
  .p-group__profile_table--office dt {
    width: 100%;
  }
}
.p-group__profile_table--office dd {
  width: calc(80% - 8px);
  margin-bottom: 24px;
}
.p-group__profile_table--office dd:last-of-type {
  margin: 0;
}
@media only screen and (max-width: 600px) {
  .p-group__profile_table--office dd {
    width: 100%;
    margin-bottom: 16px;
  }
}
.p-group__profile__each_site {
  max-width: 250px;
  margin: 40px auto 0;
}
@media only screen and (max-width: 600px) {
  .p-group__profile__each_site {
    max-width: none;
  }
}
.p-group__history__links {
  display: flex;
  flex-flow: row wrap;
  margin: 35px auto 45px;
}
.p-group__history__links > li {
  width: 14.2857142857%;
  padding: 5px;
}
.p-group__history__links > li > a {
  color: #fff;
  font-weight: 600;
  text-align: center;
  line-height: 1;
  display: block;
  background: #324d7c;
  padding: 10px 3px;
  transition: background 0.3s;
}
.p-group__history__links > li > a > i {
  font-family: poppins, sans-serif;
  font-size: 2.6rem;
  font-style: normal;
  font-weight: 600;
  padding-right: 2px;
}
.p-group__history__links > li > a:hover {
  background: #1c2b45;
}
@media only screen and (max-width: 1024px) {
  .p-group__history__links > li > a > i {
    display: block;
  }
}
@media only screen and (max-width: 768px) {
  .p-group__history__links > li {
    width: 25%;
    padding: 3px;
  }
  .p-group__history__links > li > a > i {
    font-size: 2.3rem;
  }
}
.p-group__history__cat {
  display: flex;
  z-index: 2;
  position: relative;
  justify-content: space-between;
  margin-top: 32px;
}
.p-group__history__cat li {
  width: calc(50% - 20px);
  padding: 20px 0;
  background: #d7e0ef;
  color: #083b8a;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-group__history__cat li {
    width: calc(50% - 10px);
    padding: 12px;
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 600px) {
  .p-group__history__cat li {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.p-group__history__wrap {
  z-index: 1;
  z-index: 0;
  position: relative;
  margin-bottom: -180px;
  background: #f4f8fb;
}
.p-group__history__wrap .l-lines {
  z-index: 0;
  position: absolute;
  left: 0;
}
.p-group__history__wrap .l-lines .l-line, .p-group__history__wrap .l-lines .l-line--1, .p-group__history__wrap .l-lines .l-line--2, .p-group__history__wrap .l-lines .l-line--3, .p-group__history__wrap .l-lines .l-line--4, .p-group__history__wrap .l-lines .l-line--5, .p-group__history__wrap .l-lines .l-line--6, .p-group__history__wrap .l-lines .l-line--7 {
  background: #e6e9ec;
}
.p-group__history__block {
  z-index: 1;
  position: relative;
}
.p-group__history__block--last::after {
  position: absolute;
  right: 0;
  bottom: -30px;
  left: 0;
  width: 2px;
  height: 30px;
  margin: auto;
  background: url(/group/parts/img/group_history_dot.png) no-repeat;
  content: "";
}
.p-group__history__num {
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1;
}
.p-group__history__num span {
  font-family: poppins, sans-serif;
  font-size: 4.6rem;
  font-style: normal;
  font-weight: 600;
}
@media only screen and (max-width: 768px) {
  .p-group__history__num {
    font-size: 1.6rem;
  }
  .p-group__history__num span {
    font-size: 3.2rem;
  }
}
@media only screen and (max-width: 600px) {
  .p-group__history__num {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 600px) and (max-width: 600px) {
  .p-group__history__num {
    font-size: 2rem;
  }
}
.p-group__history__list {
  position: relative;
  padding: 28px 0 48px;
}
.p-group__history__list:after {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 2px;
  height: 100%;
  margin: auto;
  background: #0058aa;
  content: "";
}
.p-group__history__list li {
  transform: translateY(20px);
  opacity: 0;
  transition: all 1s;
}
.p-group__history__list--both > div, .p-group__history__list--right, .p-group__history__list--left {
  position: relative;
  width: calc(50% - 40px);
  margin-bottom: 30px;
  padding: 40px;
  background: #fff;
  box-shadow: 0 6px 20px 0px rgba(24, 125, 177, 0.2);
}
@media only screen and (max-width: 768px) {
  .p-group__history__list--both > div, .p-group__history__list--right, .p-group__history__list--left {
    width: calc(50% - 20px);
    padding: 32px;
  }
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--both > div, .p-group__history__list--right, .p-group__history__list--left {
    width: calc(50% - 10px);
    padding: 12px;
  }
}
.p-group__history__list--both > div .p-group__history__num, .p-group__history__list--right .p-group__history__num, .p-group__history__list--left .p-group__history__num {
  margin-bottom: 10px;
  color: #0058aa;
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--both > div .p-group__history__num, .p-group__history__list--right .p-group__history__num, .p-group__history__list--left .p-group__history__num {
    margin-bottom: 6px;
  }
}
.p-group__history__list--both > div h4, .p-group__history__list--right h4, .p-group__history__list--left h4 {
  color: #0058aa;
  font-weight: 500;
}
.p-group__history__list--both > div h4.p-group__history__anni, .p-group__history__list--right h4.p-group__history__anni, .p-group__history__list--left h4.p-group__history__anni {
  color: #058532;
}
.p-group__history__list--both > div figure, .p-group__history__list--right figure, .p-group__history__list--left figure {
  margin: 0 0 0 20px;
  float: right;
}
@media only screen and (max-width: 1024px) {
  .p-group__history__list--both > div figure, .p-group__history__list--right figure, .p-group__history__list--left figure {
    margin: 0 0 20px 0;
    float: none;
  }
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--both > div figure, .p-group__history__list--right figure, .p-group__history__list--left figure {
    margin: 0 0 12px 0;
    float: none;
  }
}
.p-group__history__list--both > div .p-group__clear, .p-group__history__list--right .p-group__clear, .p-group__history__list--left .p-group__clear {
  clear: both;
}
.p-group__history__list--both > div .p-group__history__num ~ h4,
.p-group__history__list--both > div .p-group__history__num ~ p, .p-group__history__list--right .p-group__history__num ~ h4,
.p-group__history__list--right .p-group__history__num ~ p, .p-group__history__list--left .p-group__history__num ~ h4,
.p-group__history__list--left .p-group__history__num ~ p {
  margin-top: 10px;
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--both > div .p-group__history__num ~ h4,
  .p-group__history__list--both > div .p-group__history__num ~ p, .p-group__history__list--right .p-group__history__num ~ h4,
  .p-group__history__list--right .p-group__history__num ~ p, .p-group__history__list--left .p-group__history__num ~ h4,
  .p-group__history__list--left .p-group__history__num ~ p {
    margin-top: 6px;
    font-size: 1.2rem;
  }
}
.p-group__history__list--both > div > *, .p-group__history__list--right > *, .p-group__history__list--left > * {
  z-index: 1;
  position: relative;
}
.p-group__history__list--both > div > .p-group__pattern, .p-group__history__list--right > .p-group__pattern, .p-group__history__list--left > .p-group__pattern {
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/group/parts/img/group_history_bg.gif);
}
.p-group__history__list--both {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.p-group__history__list--both > div:nth-child(1):after {
  position: absolute;
  top: 38px;
  right: -10px;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 10px solid #fff;
  content: "";
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--both > div:nth-child(1):after {
    top: 43px;
    right: -5px;
    border-top: 6px solid transparent;
    border-left: 5px solid #fff;
    border-bottom: 6px solid transparent;
  }
}
.p-group__history__list--both > div:nth-child(2):after {
  position: absolute;
  top: 38px;
  left: -10px;
  border-top: 12px solid transparent;
  border-right: 10px solid #fff;
  border-bottom: 12px solid transparent;
  content: "";
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--both > div:nth-child(2):after {
    top: 43px;
    left: -5px;
    border-top: 6px solid transparent;
    border-right: 5px solid #fff;
    border-bottom: 6px solid transparent;
  }
}
.p-group__history__list--right {
  margin-left: auto;
}
.p-group__history__list--right:after {
  position: absolute;
  top: 38px;
  left: -10px;
  border-top: 12px solid transparent;
  border-right: 10px solid #fff;
  border-bottom: 12px solid transparent;
  content: "";
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--right:after {
    top: 43px;
    left: -5px;
    border-top: 6px solid transparent;
    border-right: 5px solid #fff;
    border-bottom: 6px solid transparent;
  }
}
.p-group__history__list--left {
  margin-right: auto;
}
.p-group__history__list--left:before {
  position: absolute;
  top: 44px;
  width: 12px;
  height: 12px;
  margin: auto;
  border-radius: 50%;
  background: #0058aa;
  content: "";
  right: -46px;
}
@media only screen and (max-width: 768px) {
  .p-group__history__list--left:before {
    right: -26px;
  }
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--left:before {
    top: 46px;
    width: 8px;
    height: 8px;
    right: -14px;
  }
}
.p-group__history__list--left:after {
  position: absolute;
  top: 38px;
  right: -10px;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 10px solid #fff;
  content: "";
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--left:after {
    top: 43px;
    right: -5px;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 5px solid #fff;
  }
}
.p-group__history__list--second {
  margin-top: 30px;
  padding-top: 30px;
  border-top: solid 1px #d4d4d4;
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--second {
    margin-top: 16px;
    padding-top: 16px;
  }
}
.p-group__history__list--second *:nth-child(n+2) {
  margin-top: 10px;
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--second p, .p-group__history__list--second h4 {
    font-size: 1.2rem;
  }
}
.p-group__history__list--no_year:before, .p-group__history__list--no_year:after {
  display: none;
}
.p-group__history__list--no_year p {
  margin-top: 10px;
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--no_year p, .p-group__history__list--no_year h4 {
    font-size: 1.2rem;
  }
}
.p-group__history__list--both > div:nth-child(2):before, .p-group__history__list--right:before {
  position: absolute;
  left: -46px;
  top: 44px;
  width: 12px;
  height: 12px;
  margin: auto;
  border-radius: 50%;
  background: #0058aa;
  content: "";
}
@media only screen and (max-width: 768px) {
  .p-group__history__list--both > div:nth-child(2):before, .p-group__history__list--right:before {
    left: -26px;
  }
}
@media only screen and (max-width: 600px) {
  .p-group__history__list--both > div:nth-child(2):before, .p-group__history__list--right:before {
    left: -14px;
    top: 46px;
    width: 8px;
    height: 8px;
  }
}
.p-group__history__list_title {
  position: relative;
  margin: 26px 0 0;
  padding: 0 0 36px;
  text-align: center;
}
.p-group__history__list_title:after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 12px;
  height: 12px;
  margin: auto;
  border-radius: 50%;
  background: #0058aa;
  content: "";
}
@media only screen and (max-width: 600px) {
  .p-group__history__list_title {
    padding: 0 0 24px;
  }
  .p-group__history__list_title::after {
    width: 8px;
    height: 8px;
  }
  .p-group__history__list_title h3 {
    margin-top: 8px;
    font-size: 1.4rem;
  }
  .p-group__history__list_title .sp-br::before {
    content: "\a";
    white-space: pre;
  }
}
.p-group__history__text {
  background: #f4f8fb;
  padding-bottom: 60px;
  margin-top: 50px;
}
@media only screen and (max-width: 600px) {
  .p-group__history__text {
    margin-top: 40px;
  }
}
.p-group__history__text .p-group__history__list_title {
  text-align: left;
  margin-top: 0;
}
.p-group__history__text .p-group__history__list_title::after {
  display: none;
}
.p-group__history__text .p-group__history__block {
  padding-top: 50px;
}
.p-group__history__text dl > div {
  display: flex;
  border-top: 1px solid #c0d9ee;
  padding-top: 15px;
  padding-bottom: 15px;
}
.p-group__history__text dl > div > dt {
  color: #0058aa;
  font-weight: bold;
  width: 130px;
}
.p-group__history__text dl > div > dt > span {
  display: inline-block;
  width: 65px;
}
.p-group__history__text dl > div > dt > i {
  color: rgba(0, 88, 170, 0.6);
}
.p-group__history__text dl > div > dd {
  word-break: break-word;
  width: calc(100% - 130px);
}
.p-group__history__text dl > div.-same {
  border-top: 0;
  padding-top: 0;
}
.p-group__history__text dl > div:last-of-type {
  border-bottom: 1px solid #c0d9ee;
}
@media only screen and (max-width: 600px) {
  .p-group__history__text dl > div {
    display: block;
  }
  .p-group__history__text dl > div > dt {
    width: unset;
  }
  .p-group__history__text dl > div > dt > span {
    font-size: 2rem;
    width: unset;
  }
  .p-group__history__text dl > div > dt > i {
    margin-top: 10px;
    font-size: 1.6rem;
    display: block;
  }
  .p-group__history__text dl > div dd {
    width: 100%;
    margin-top: 7px;
  }
  .p-group__history__text dl > div.-same > dt > span {
    display: none;
  }
  .p-group__history__text dl > div.-same > dt > i {
    margin-top: 2px;
  }
}
.p-group__history__text dl.-en > div > dt > span {
  float: right;
}
@media only screen and (max-width: 600px) {
  .p-group__history__text dl.-en > div > dt {
    display: flex;
    flex-flow: column-reverse;
  }
  .p-group__history__text dl.-en > div > dt > span {
    float: none;
  }
}
.p-group__ceo {
  margin: 56px 0 8px 0;
  text-align: right;
}
.p-group .l-article .p-group__history__wrap {
  margin-top: -32px;
  padding-top: 58px;
  padding-bottom: 230px;
}
@media only screen and (max-width: 768px) {
  .p-group .l-article .p-group__history__wrap {
    margin-top: -22px;
  }
}

.p-declaration .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-declaration.-fromRecruit .l-mv {
  background: url(/recruit/parts/img/pagetitle_environment.jpg) no-repeat center/cover;
}
.p-declaration.-fromRecruit .l-mv::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-size: auto auto;
  background-color: rgba(0, 88, 170, 0.74);
  background-image: repeating-linear-gradient(45deg, transparent, transparent 3px, rgba(0, 88, 170, 0.67) 3px, rgba(0, 88, 170, 0.67) 6px);
  opacity: 0.6;
}
.p-declaration.-fromRecruit .l-mv__title span::before {
  background: #fff;
}
.p-declaration__box {
  color: #0058aa;
  background: #edf6fc;
  padding: 25px 40px;
}
@media only screen and (max-width: 768px) {
  .p-declaration__box {
    padding: 20px 25px;
  }
}
.p-declaration__box h2 {
  font-size: 2rem;
  text-align: center;
  margin-bottom: 10px;
}
.p-declaration__box dl {
  text-align: right;
  margin-top: 10px;
}
.p-declaration__policy img {
  width: 100%;
}
.p-declaration__policy figcaption {
  color: #0058aa;
  font-size: 2.3rem;
  margin-top: 15px;
}
@media only screen and (max-width: 768px) {
  .p-declaration__policy figcaption {
    font-size: 2rem;
  }
}
.p-declaration__h2 {
  color: #0058aa;
  font-size: 2.3rem;
  margin-top: 32px;
  margin-bottom: 16px;
}
@media only screen and (max-width: 768px) {
  .p-declaration__h2 {
    font-size: 2rem;
  }
}
.p-declaration__h2--num {
  color: #0058aa;
  font-size: 1.8rem;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
  margin-bottom: 16px;
}
@media only screen and (max-width: 768px) {
  .p-declaration__h2--num {
    font-size: 1.6rem;
    margin-top: 25px;
  }
}
.p-declaration__attempt {
  display: grid;
  grid-template-columns: 1fr 324px;
}
.p-declaration__attempt figure {
  text-align: right;
}
.p-declaration__attempt figure img {
  height: 100px;
  width: auto;
}
@media only screen and (max-width: 768px) {
  .p-declaration__attempt {
    display: block;
  }
  .p-declaration__attempt figure {
    text-align: left;
    margin-top: 10px;
  }
  .p-declaration__attempt figure img {
    height: 90px;
  }
}
.p-declaration__map {
  position: relative;
}
.p-declaration__map p.-zoom {
  color: #777;
  font-size: 1.6rem;
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 50%;
  background: #f8f8f8;
  padding: 7px 15px 7px 30px;
  transform: translate(-50%, -50%);
  border: 1px solid #777;
}
.p-declaration__map p.-zoom::before, .p-declaration__map p.-zoom::after {
  content: "";
  display: block;
  width: 2px;
  height: 10px;
  position: absolute;
  left: 14px;
  top: 0;
  bottom: 0;
  background: #777;
  margin: auto;
}
.p-declaration__map p.-zoom::after {
  transform: rotate(90deg);
}
@media only screen and (max-width: 768px) {
  .p-declaration__map--pc {
    display: none;
  }
}

.p-sustain .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-sustain.-fromRecruit .l-mv {
  background-image: url(../../sustainability/parts/img/mv.jpg);
}
.p-sustain.-fromRecruit .l-mv__title span::before {
  background: #fff;
}
.p-sustain p ~ p {
  margin-top: 16px;
}
.p-sustain__h2 {
  color: #0058aa;
  font-size: 1.9rem;
  font-weight: 600;
  margin-top: 32px;
  margin-bottom: 16px;
}
@media only screen and (max-width: 768px) {
  .p-sustain__h2 {
    font-size: 1.8rem;
  }
}
.p-sustain__h2--num {
  color: #0058aa;
  font-size: 2.4rem;
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
  margin-bottom: 16px;
}
@media only screen and (max-width: 768px) {
  .p-sustain__h2--num {
    font-size: 2.2rem;
  }
}
.p-sustain__h2--num ul.-icons {
  display: flex;
}
.p-sustain__h2--num ul.-icons li {
  width: 80px;
  padding: 3px;
}
.p-sustain__h2--num ~ .p-sustain__h2--num {
  border-top: 1px solid #c0d9ee;
  margin-top: 50px;
}
@media only screen and (max-width: 768px) {
  .p-sustain__h2--num {
    display: block;
    padding-top: 30px;
  }
  .p-sustain__h2--num ul.-icons {
    margin-top: 10px;
  }
}
.p-sustain__h2--num + .p-sustain__h2 {
  margin-top: 0;
}
.p-sustain__flex, .p-sustain__flex-4, .p-sustain__flex-3, .p-sustain__flex-2, .p-sustain__flex-1 {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
}
@media only screen and (max-width: 768px) {
  .p-sustain__flex > .-item, .p-sustain__flex-4 > .-item, .p-sustain__flex-3 > .-item, .p-sustain__flex-2 > .-item, .p-sustain__flex-1 > .-item {
    width: 100% !important;
  }
  .p-sustain__flex > .-item:last-child, .p-sustain__flex-4 > .-item:last-child, .p-sustain__flex-3 > .-item:last-child, .p-sustain__flex-2 > .-item:last-child, .p-sustain__flex-1 > .-item:last-child {
    margin-top: 15px;
    margin-left: 0 !important;
    margin-right: 0;
  }
  .p-sustain__flex > .-item img, .p-sustain__flex-4 > .-item img, .p-sustain__flex-3 > .-item img, .p-sustain__flex-2 > .-item img, .p-sustain__flex-1 > .-item img {
    width: 100%;
  }
}
.p-sustain__flex-1 .-item {
  width: calc(50% - 5px);
}
.p-sustain__flex-1.-piller ul {
  display: flex;
  flex-flow: row wrap;
}
.p-sustain__flex-1.-piller ul li {
  width: 25%;
  padding: 5px;
}
.p-sustain__flex-1.-piller ol {
  color: #136595;
  font-size: 1.8rem;
  background: #edf6fc;
}
.p-sustain__flex-1.-privacy .-item:last-child {
  background: #fffcdf;
  padding: 20px 30px;
}
@media only screen and (max-width: 768px) {
  .p-sustain__flex-1.-privacy .-item:last-child {
    padding: 20px;
  }
}
.p-sustain__flex-1.-privacy .-item:last-child p {
  font-weight: bold;
  margin-bottom: 10px;
}
.p-sustain__flex-1.-privacy .-item:last-child ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.p-sustain__flex-1.-privacy .-item:last-child ul li a {
  display: block;
}
.p-sustain__flex-1.-privacy .-item:last-child ul li a img {
  width: 55px;
  height: auto;
}
[lang=en] .p-sustain__flex-1.-privacy {
  display: none;
}

[lang=zh] .p-sustain__flex-1.-privacy {
  display: none;
}

.p-sustain__flex-2 .-item:first-child {
  width: calc(100% - 230px);
}
.p-sustain__flex-2 .-item:last-child {
  width: 200px;
  margin-left: 30px;
}
.p-sustain__flex-2.-contribution .-item:last-child li + li {
  margin-top: 15px;
}
.p-sustain__flex-3 .-item:first-child {
  width: 28% !important;
}
.p-sustain__flex-3 .-item:last-child {
  width: 67% !important;
  margin-top: 0 !important;
}
@media only screen and (max-width: 768px) {
  .p-sustain__flex-3 {
    margin-top: 30px;
  }
  .p-sustain__flex-3 figcaption {
    font-size: 1.2rem;
  }
}
.p-sustain__flex-4 .-item:first-child {
  width: calc(100% - 334px);
}
.p-sustain__flex-4 .-item:last-child {
  text-align: right;
  display: flex;
  width: 300px;
  margin-left: 34px;
}
.p-sustain__flex-4 .-item:last-child img {
  height: 100px;
  width: auto;
}
@media only screen and (max-width: 768px) {
  .p-sustain__flex-4 .-item:last-child {
    text-align: left;
  }
  .p-sustain__flex-4 .-item:last-child img {
    height: 90px;
  }
}
.p-sustain .c-list--ul > li .example {
  margin-top: 10px;
}
.p-sustain .c-list--ul.square > li::before {
  top: 8px;
  height: 8px;
}
@media only screen and (max-width: 768px) {
  .p-sustain .c-list--ul.square > li::before {
    top: 6px;
    height: 6px;
  }
}
.p-sustain .welfare_imgs {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-flow: row wrap;
}
.p-sustain .welfare_imgs img {
  height: 180px;
  width: auto;
}
@media only screen and (max-width: 1024px) {
  .p-sustain .welfare_imgs {
    justify-content: center;
    margin: -5px;
  }
  .p-sustain .welfare_imgs img {
    margin: 5px;
    height: 26vw;
  }
}
.p-sustain .risk_imgs img {
  vertical-align: top;
}
.p-sustain .risk_imgs img + img {
  margin-left: 30px;
}
@media only screen and (max-width: 768px) {
  .p-sustain .risk_imgs img:first-child {
    width: 100%;
  }
  .p-sustain .risk_imgs img + img {
    width: 130px;
    margin-left: 0;
    margin-top: 20px;
  }
}
[lang=en] .p-sustain .risk_imgs {
  display: none;
}

[lang=zh] .p-sustain .risk_imgs {
  display: none;
}

.p-market .l-mv {
  background-image: url(/press/parts/img/mv.jpg);
}
.p-market__inquiry {
  margin-bottom: 40px;
  border: 1px solid #136595;
  background: #fff;
}
.p-market__inquiry h3 {
  padding: 12px 0;
  background: #136595;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-align: center;
}
@media only screen and (max-width: 600px) {
  .p-market__inquiry h3 {
    padding: 10px 0;
  }
}
@media only screen and (max-width: 480px) {
  .p-market__inquiry h3 {
    font-size: 1.3rem;
    letter-spacing: 0.06em;
  }
}
.p-market__inquiry .c-flexbox--2 {
  margin: 24px 24px 32px;
}
@media only screen and (max-width: 600px) {
  .p-market__inquiry .c-flexbox--2 {
    margin: 20px 20px 24px;
  }
}
@media only screen and (max-width: 600px) {
  .p-market__inquiry .c-flexbox--2 {
    margin: 16px 16px 20px;
  }
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: calc((100% - 24px) / 2);
  margin-bottom: 0;
  padding: 12px 16px 20px;
  overflow: hidden;
  background: #0058aa;
  color: #fff;
  text-align: center;
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item::before {
  display: block;
  position: absolute;
  top: 0;
  right: 107%;
  width: 160%;
  height: 100%;
  transform: skewX(-45deg);
  background: #129fe8;
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item.p-market__inquiry__tel {
  background: #555;
  cursor: default;
  pointer-events: none;
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item.p-market__inquiry__tel::before {
  display: none;
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item.p-market__inquiry__tel.is-sp {
  background: #0058aa;
  cursor: pointer;
  pointer-events: auto;
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item.p-market__inquiry__tel.is-sp::before {
  display: block;
}
@media only screen and (max-width: 480px) {
  .p-market__inquiry .c-flexbox--2 .c-flexbox__item.p-market__inquiry__tel {
    padding: 10px 16px 16px;
  }
}
@media only screen and (max-width: 480px) {
  .p-market__inquiry .c-flexbox--2 .c-flexbox__item.p-market__inquiry__form {
    margin-top: 12px;
    padding: 14px 16px 14px;
  }
  .p-market__inquiry .c-flexbox--2 .c-flexbox__item.p-market__inquiry__form::before {
    right: 102%;
  }
}
@media only screen and (max-width: 600px) {
  .p-market__inquiry .c-flexbox--2 .c-flexbox__item {
    width: calc((100% - 12px) / 2);
  }
}
@media only screen and (max-width: 480px) {
  .p-market__inquiry .c-flexbox--2 .c-flexbox__item {
    width: 100%;
  }
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item dl {
  position: relative;
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item dl dt {
  font-size: 2.4rem;
  font-weight: bold;
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item dl dd {
  font-size: 1.2rem;
  line-height: 1.4;
}
@media only screen and (max-width: 600px) {
  .p-market__inquiry .c-flexbox--2 .c-flexbox__item dl dt {
    font-size: 2rem;
  }
  .p-market__inquiry .c-flexbox--2 .c-flexbox__item dl dd {
    font-size: 1.1rem;
  }
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item span {
  position: relative;
  font-weight: bold;
}
.p-market__inquiry .c-flexbox--2 .c-flexbox__item:hover::before {
  right: -20%;
  transition: right 0.3s ease-in-out;
}
.p-market .c-sort.-jc {
  justify-content: center;
}
.p-market .c-info {
  margin-bottom: 32px;
}
.p-market .c-info__list {
  margin-bottom: 0;
}
.p-market__article > table {
  width: 100%;
}
.p-market__article > table td hr {
  margin-bottom: 24px;
}
@media only screen and (max-width: 768px) {
  .p-market__article > table td hr {
    margin-bottom: 16px;
  }
}
.p-market__article > table td p {
  margin-bottom: 24px;
  line-height: 1.7;
}
.p-market__article > table td p > strong {
  font-size: 2rem;
  line-height: 1.4;
}
@media only screen and (max-width: 768px) {
  .p-market__article > table td p {
    margin-bottom: 20px;
    line-height: 1.56;
  }
  .p-market__article > table td p > strong {
    font-size: 1.8rem;
  }
}
.p-market__article > table td > table {
  width: 100%;
  margin-bottom: 24px;
  border: 1px solid #ccc;
}
.p-market__article > table td > table th, .p-market__article > table td > table td {
  padding: 12px;
  border: 1px solid #ccc;
}
.p-market__article > table td > table th > p strong, .p-market__article > table td > table td > p strong {
  display: inline-block;
  margin-bottom: 8px;
}
@media only screen and (max-width: 768px) {
  .p-market__article > table td > table {
    margin-bottom: 20px;
  }
  .p-market__article > table td > table th, .p-market__article > table td > table td {
    padding: 8px;
    font-size: 1.2rem;
  }
  .p-market__article > table td > table th > p strong, .p-market__article > table td > table td > p strong {
    font-size: 1.6rem;
  }
}
.p-market__article h2 {
  margin-bottom: 24px;
  padding-left: 16px;
  border-left: 1px solid #0058aa;
  color: #0058aa;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.4;
}
[lang=ja] .p-market__article h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-market__article h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-market__article h2 {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 768px) {
  .p-market__article h2 {
    margin-bottom: 16px;
    padding-left: 12px;
    font-size: 2.4rem;
    letter-spacing: 0.04em;
  }
}
@media only screen and (max-width: 480px) {
  .p-market__article h2 {
    font-size: 2.2rem;
  }
}
.p-market__article p.text3 {
  margin-bottom: 24px;
  line-height: 1.7;
}
@media only screen and (max-width: 768px) {
  .p-market__article p.text3 {
    margin-bottom: 20px;
    line-height: 1.56;
  }
}
.p-market__article .pr_lead {
  color: #0058aa;
  font-weight: bold;
}
.p-market__article blockquote.text3, .p-market__article .text3 blockquote {
  margin-bottom: 24px;
  padding: 24px 24px 32px !important;
  background: #f6f6f6;
}
@media only screen and (max-width: 768px) {
  .p-market__article blockquote.text3, .p-market__article .text3 blockquote {
    margin-bottom: 20px;
    line-height: 1.56;
  }
}
.p-market__article dl.text3 dt {
  margin-bottom: 20px !important;
  line-height: 1.7 !important;
}
@media only screen and (max-width: 768px) {
  .p-market__article dl.text3 dt {
    margin-bottom: 16px !important;
    line-height: 1.56 !important;
  }
}
.p-market__article dl.text3 dd {
  margin-bottom: 32px !important;
  line-height: 1.7 !important;
}
@media only screen and (max-width: 768px) {
  .p-market__article dl.text3 dd {
    margin-bottom: 24px !important;
    line-height: 1.56 !important;
  }
}
.p-market__article tabel.text3,
.p-market__article .text3 table {
  width: 100%;
  margin-bottom: 24px !important;
}
@media only screen and (max-width: 768px) {
  .p-market__article tabel.text3,
  .p-market__article .text3 table {
    margin-bottom: 20px !important;
  }
  .p-market__article tabel.text3 th, .p-market__article tabel.text3 td,
  .p-market__article .text3 table th,
  .p-market__article .text3 table td {
    padding: 8px;
    font-size: 1.2rem;
    width: auto !important;
  }
}
.p-market__article tabel.text3 th, .p-market__article tabel.text3 td {
  padding: 12px;
}
.p-market__article .text3 table th, .p-market__article .text3 table td {
  padding: 12px;
}
.p-market__article a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-market__article a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-market__article .market_notice {
  margin-top: 64px;
  line-height: 1.7;
}
@media only screen and (max-width: 768px) {
  .p-market__article .market_notice {
    margin-top: 48px;
  }
}
.p-market__article .market_notice a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-market__article .market_notice a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}

.p-mypage__notice {
  border: 1px solid #0058aa;
  margin-top: 15px;
  padding: 20px 24px 24px;
}
.p-mypage__form .is-error {
  width: 100%;
  margin-bottom: 8px;
  color: #fc0339;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__table tr {
    display: block;
    position: relative;
  }
}
.p-mypage__form__table th.-company, .p-mypage__form__table td.-company {
  display: flex;
}
.p-mypage__form__table th.-company select, .p-mypage__form__table td.-company select {
  width: 170px;
}
.p-mypage__form__table th.-company .c-form__selectwrap:has(select[name=before_stock]), .p-mypage__form__table td.-company .c-form__selectwrap:has(select[name=before_stock]) {
  margin-right: 10px;
}
.p-mypage__form__table th.-company input, .p-mypage__form__table td.-company input {
  width: calc(100% - 360px);
  margin-right: 10px;
}
@media only screen and (max-width: 1024px) {
  .p-mypage__form__table th.-company, .p-mypage__form__table td.-company {
    flex-wrap: wrap;
  }
  .p-mypage__form__table th.-company input, .p-mypage__form__table td.-company input {
    width: 100%;
    margin: 10px 0;
  }
  .p-mypage__form__table th.-company select, .p-mypage__form__table td.-company select {
    width: 200px;
  }
}
_:-ms-fullscreen, :root .p-mypage__form__table th.-company, :root .p-mypage__form__table td.-company {
  display: block;
  overflow: hidden;
}
_:-ms-fullscreen input[name=company_name], :root .p-mypage__form__table th.-company input[name=company_name], :root .p-mypage__form__table td.-company input[name=company_name] {
  margin: 0 10px;
}
@media only screen and (max-width: 600px) {
  _:-ms-fullscreen input[name=company_name], :root .p-mypage__form__table th.-company input[name=company_name], :root .p-mypage__form__table td.-company input[name=company_name] {
    width: 100%;
    margin: 10px 0;
  }
}

.p-mypage__form__table th.-department input, .p-mypage__form__table td.-department input {
  max-width: 240px;
}
.p-mypage__form__table th.-name > span, .p-mypage__form__table td.-name > span {
  margin: 4px 0;
}
.p-mypage__form__table th.-name input, .p-mypage__form__table td.-name input {
  width: auto;
  max-width: 240px;
  margin: 0 16px 0 8px;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__table th.-name input, .p-mypage__form__table td.-name input {
    margin: 0 8px 0 4px;
  }
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__table th.-address, .p-mypage__form__table td.-address {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  _:-ms-fullscreen, :root .p-mypage__form__table th.-address, :root .p-mypage__form__table td.-address {
    display: block;
  }
  _:-ms-fullscreen .p-mypage__form__selectCountry:first-of-type, :root .p-mypage__form__table th.-address .p-mypage__form__selectCountry:first-of-type, :root .p-mypage__form__table td.-address .p-mypage__form__selectCountry:first-of-type {
    float: left;
  }
}
.p-mypage__form__table th .-tel input, .p-mypage__form__table td .-tel input {
  max-width: 240px;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__table th .-tel input, .p-mypage__form__table td .-tel input {
    max-width: none;
  }
}
.p-mypage__form__table th.-category, .p-mypage__form__table td.-category {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-mypage__form__table th.-category > ul, .p-mypage__form__table td.-category > ul {
  width: 48%;
}
.p-mypage__form__table th.-category > ul > li, .p-mypage__form__table td.-category > ul > li {
  margin: 8px 0;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__table th.-category > ul, .p-mypage__form__table td.-category > ul {
    width: 100%;
  }
  .p-mypage__form__table th.-category > ul > li, .p-mypage__form__table td.-category > ul > li {
    margin: 0 0 10px 0;
    font-size: 1.4rem;
  }
}
.p-mypage__form__table th.-category label, .p-mypage__form__table td.-category label {
  cursor: pointer;
  transition: color 0.3s ease-in-out;
}
.p-mypage__form__table th.-category label input, .p-mypage__form__table td.-category label input {
  display: inherit;
  width: auto;
  margin-right: 6px;
}
.p-mypage__form__table th.-category label:hover, .p-mypage__form__table td.-category label:hover {
  color: #129fe8;
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__table th {
    text-align: left;
  }
}
.p-mypage__form__table.is-confirm td.-company {
  display: table-cell;
}
.p-mypage__form__selectCountry {
  display: inline-block;
  margin-right: 4px;
  padding: 8px 20px;
  background: #ccdded;
  cursor: pointer;
  transition: color 0.3s ease-in-out, background 0.3s ease-in-out;
}
.p-mypage__form__selectCountry input {
  display: none;
}
.p-mypage__form__selectCountry.is-checked {
  background: #0058aa;
  color: #fff;
}
.p-mypage__form__selectCountry.is-checked:hover {
  background: #0058aa;
  color: #fff;
}
.p-mypage__form__selectCountry:hover {
  background: #d0e1f2;
  color: #0058aa;
  transition: color 0.3s ease-in-out, background 0.3s ease-in-out;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__selectCountry {
    width: 50%;
    margin-right: 0;
    padding: 12px;
    text-align: center;
  }
}
.p-mypage__form__address {
  display: none;
  width: 100%;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__address {
    margin-top: 10px;
  }
}
.is-confirm .p-mypage__form__address tr:first-of-type th, .is-confirm .p-mypage__form__address tr:first-of-type td {
  border-top: none;
  padding-top: 8px;
}

@media only screen and (max-width: 600px) {
  .is-confirm .p-mypage__form__address {
    margin-top: 0;
  }
}
.p-mypage__form__address th, .p-mypage__form__address td {
  padding: 16px 0;
  border-left: none;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__address th, .p-mypage__form__address td {
    padding: 10px 0;
  }
}
.p-mypage__form__address th.-zip, .p-mypage__form__address td.-zip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.p-mypage__form__address th input[name=zipcode], .p-mypage__form__address th input[name=zipcode_ovs], .p-mypage__form__address td input[name=zipcode], .p-mypage__form__address td input[name=zipcode_ovs] {
  max-width: 240px;
  margin-left: 8px;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__address th input[name=zipcode], .p-mypage__form__address th input[name=zipcode_ovs], .p-mypage__form__address td input[name=zipcode], .p-mypage__form__address td input[name=zipcode_ovs] {
    max-width: 120px;
  }
}
.p-mypage__form__address th input[name=address1], .p-mypage__form__address th input[name=address2], .p-mypage__form__address th input[name=address1_ovs], .p-mypage__form__address td input[name=address1], .p-mypage__form__address td input[name=address2], .p-mypage__form__address td input[name=address1_ovs] {
  margin-top: 8px;
}
.p-mypage__form__address th select[name=prefcode], .p-mypage__form__address th select[name=prefcode], .p-mypage__form__address td select[name=prefcode], .p-mypage__form__address td select[name=prefcode] {
  width: 240px;
  margin-left: 8px;
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__address th select[name=prefcode], .p-mypage__form__address th select[name=prefcode], .p-mypage__form__address td select[name=prefcode], .p-mypage__form__address td select[name=prefcode] {
    margin-top: 8px;
    margin-left: 0;
  }
}
@media only screen and (max-width: 600px) {
  .p-mypage__form__address th .c-form__selectwrap::after, .p-mypage__form__address td .c-form__selectwrap::after {
    top: 24px;
  }
}
.p-mypage__form__address.is-show {
  display: table;
}
.p-mypage__regist {
  max-width: 470px;
  margin: 0 auto;
}
.p-mypage__regist .c-btn, .p-mypage__regist .c-btn--line {
  width: 250px;
  margin: 30px auto 0;
}
@media only screen and (max-width: 600px) {
  .p-mypage__regist .c-btn, .p-mypage__regist .c-btn--line {
    width: 100%;
  }
}
.p-mypage__list {
  display: flex;
  flex-flow: row wrap;
}
.p-mypage__list li {
  color: #3767a4;
  font-size: 1.8rem;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background: #fff;
  width: calc((100% - 56px) / 4);
  margin: 7px;
  aspect-ratio: 47/36;
  box-shadow: 0 0px 7px rgba(24, 125, 177, 0.4);
  cursor: pointer;
  transition: 0.3s;
}
.p-mypage__list li > a {
  color: #3767a4;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}
.p-mypage__list li span {
  color: rgba(18, 159, 232, 0.5);
  font-family: montserrat, sans-serif;
  font-size: 2.8rem;
  font-weight: 900;
  position: absolute;
  right: 10px;
  top: 12px;
}
.p-mypage__list li img {
  display: block;
  position: absolute;
  left: 10px;
  top: 10px;
  width: 40px;
  opacity: 0.7;
}
@media only screen and (max-width: 1024px) {
  .p-mypage__list li {
    font-size: 1.5rem;
  }
  .p-mypage__list li img {
    width: 30px;
  }
  .p-mypage__list li span {
    top: 8px;
  }
}
@media only screen and (max-width: 768px) {
  .p-mypage__list li {
    width: calc(33.3333333333% - 14px);
  }
  .p-mypage__list li span {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 600px) {
  .p-mypage__list li {
    width: calc(50% - 14px);
    font-size: 1.4rem;
  }
}
.p-mypage__list li:hover {
  background: #ecf7ff;
  box-shadow: 0 0px 24px rgba(24, 125, 177, 0.4);
}
.p-mypage__list li.active {
  background: #ecf7ff;
  box-shadow: 0 0px 24px rgba(24, 125, 177, 0.4);
}
.p-mypage__booklist {
  display: flex;
  flex-flow: row wrap;
  position: relative;
  margin-bottom: -16px;
}
.p-mypage__booklist li {
  width: 25%;
  position: relative;
  margin-bottom: 16px;
}
@media only screen and (max-width: 768px) {
  .p-mypage__booklist li {
    width: 50%;
  }
}
.p-mypage__booklist li > a {
  color: #333 !important;
  text-decoration: unset !important;
}
.p-mypage__booklist li > a:first-child {
  display: block;
  margin: 0 8px;
  width: calc(100% - 16px);
  height: 100%;
  background: #ecf7ff;
  padding: 24px 20px;
  transition: 0.3s;
}
.p-mypage__booklist li > a:first-child:hover {
  color: #0058aa !important;
  background: #ddf1ff;
  transition: 0.3s;
}
@media only screen and (max-width: 480px) {
  .p-mypage__booklist li > a:first-child {
    padding: 20px 10px;
    font-size: 1.3rem;
  }
}
.p-mypage__booklist li > a > div {
  display: flex;
  flex-flow: row wrap;
  align-content: space-between;
  height: 100%;
}
.p-mypage__booklist li > a > div .quotation_code {
  font-size: 1.8rem;
}
.p-mypage__booklist li > a > div .quotation_code span {
  color: #888;
  font-size: 1.3rem;
  display: block;
}
.p-mypage__booklist__fig {
  position: relative;
  text-align: center;
  width: 100%;
}
.p-mypage__booklist__fig > img {
  width: 100%;
  max-width: 120px;
  max-height: 170px;
  margin-bottom: 7px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.16);
}
@media only screen and (max-width: 480px) {
  .p-mypage__booklist__fig > img {
    width: 80%;
  }
}
.p-mypage__booklist__fig figcaption {
  text-align: left;
}
.p-mypage__booklist__fig figcaption dl {
  text-align: center;
  margin-bottom: 5px;
}
.p-mypage__booklist__fig figcaption dl dt, .p-mypage__booklist__fig figcaption dl dd {
  color: #888;
  font-size: 1.2rem;
}
@media only screen and (max-width: 480px) {
  .p-mypage__booklist__fig figcaption dl dt, .p-mypage__booklist__fig figcaption dl dd {
    font-size: 1rem;
  }
}
.p-mypage__booklist__fig figcaption p {
  font-size: 1.4rem;
}
.p-mypage__booklist__fig figcaption p .report_type {
  color: #129fe8;
  font-size: 1.2rem;
  display: block;
  margin-bottom: 3px;
}
@media only screen and (max-width: 480px) {
  .p-mypage__booklist__fig figcaption ul > li {
    height: auto;
    padding: 4px;
    font-size: 1rem;
    line-height: 1.2;
  }
  .p-mypage__booklist__fig figcaption p {
    font-size: 1.3rem;
  }
  .p-mypage__booklist__fig figcaption p .report_type {
    font-size: 1.1rem;
  }
}
.p-mypage__booklist__detail {
  width: 100%;
  margin-top: 7px;
  border-bottom: 1px solid #c0d9ee;
}
.p-mypage__booklist__detail th {
  color: #4b8cc2;
  font-size: 1.2rem;
  font-weight: bold;
  font-weight: normal;
  padding-right: 5px;
}
.p-mypage__booklist__detail td {
  font-size: 1.4rem;
  text-align: right;
}
.p-mypage__booklist__detail td a.link {
  color: #0058aa;
  text-decoration: underline;
  font-weight: bold;
  display: block;
  padding: 5px 0;
}
.p-mypage__booklist__detail td a.link.-ended {
  color: #888 !important;
}
.p-mypage__booklist__detail th, .p-mypage__booklist__detail td {
  padding-top: 4px;
  padding-bottom: 4px;
  border-top: 1px solid #c0d9ee;
}
@media only screen and (max-width: 480px) {
  .p-mypage__booklist__detail th {
    font-size: 1.1rem;
  }
  .p-mypage__booklist__detail td {
    font-size: 1.2rem;
  }
}
.p-mypage__booklist.-extra_btn li > a:first-child {
  padding-bottom: 45px;
}
.p-mypage__booklist.-extra_btn li > a.js_favo_del {
  color: #888;
  font-size: 1.2rem;
  text-align: center;
  position: absolute;
  bottom: 7px;
  left: 0;
  right: 0;
  z-index: 10;
  background: #fff;
  width: 70px;
  margin: auto;
  padding: 4px;
  border: 1px solid #888;
  border-radius: 3px;
}
.p-mypage__booklist.-extra_btn li > a.btn {
  color: #fff !important;
  font-size: 1.3rem;
  text-align: center;
  position: absolute;
  bottom: 8px;
  left: 0;
  right: 0;
  z-index: 10;
  width: 80%;
  margin: 0 auto;
  padding: 5px 0;
  border-radius: 3px;
}
.p-mypage__booklist.-extra_btn li > a.btn.-available {
  background: #129fe8;
}
.p-mypage__booklist.-extra_btn li > a.btn.-ended {
  background: #888;
}
.p-mypage__key {
  background: #eff5f8;
  padding: 32px;
}
.p-mypage__key .c-title--s {
  margin-top: 0;
}
@media only screen and (max-width: 600px) {
  .p-mypage__key {
    padding: 24px;
  }
}
.p-mypage__key .key_regist {
  text-align: right;
}
.p-mypage__key .key_regist_input {
  width: 30rem;
  margin-right: 10px;
}
.p-mypage__key .key_regist_button {
  width: 80px;
  padding: 5px 8px;
  border-radius: 3px;
  background: #129fe8;
  color: #fff;
  transition: background 0.3s ease-in-out;
}
@media only screen and (max-width: 600px) {
  .p-mypage__key .key_regist {
    text-align: center;
  }
  .p-mypage__key .key_regist_input {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .p-mypage__key .key_regist_button {
    width: 100px;
  }
}
.p-mypage__service__flow a {
  color: #0058aa;
  text-decoration: underline;
}
.p-mypage__service__flow .service_flow_box {
  position: relative;
  padding: 20px 24px;
  margin-top: 32px;
  box-shadow: 0 6px 18px rgba(24, 125, 177, 0.2);
}
.p-mypage__service__flow .service_flow_box ~ .service_flow_box {
  margin-top: 60px;
}
.p-mypage__service__flow .service_flow_box ~ .service_flow_box::before {
  content: "";
  display: block;
  position: absolute;
  bottom: calc(100% + 16px);
  left: calc(50% - 30px);
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 30px 0 30px;
  border-color: rgba(94, 152, 200, 0.5) transparent transparent transparent;
}
.p-mypage__service__flow .service_flow_box .flow_step {
  font-family: montserrat, sans-serif;
  font-size: 1.2rem;
  color: rgba(94, 152, 200, 0.9);
  font-weight: 600;
  display: inline-block;
  position: absolute;
  left: 20px;
  bottom: calc(100% - 10px);
}
.p-mypage__service__flow .service_flow_box .flow_step i {
  font-size: 1.8rem;
  padding-left: 5px;
}
.p-mypage__service__flow .service_flow_box .flow_title {
  font-family: 游ゴシック体, YuGothic, 游ゴシック, "Yu Gothic", メイリオ, sans-serif;
  color: #136595;
  font-size: 2.1rem;
  position: relative;
}
@media only screen and (max-width: 600px) {
  .p-mypage__service__flow .service_flow_box .flow_title {
    font-size: 1.8rem;
    padding-right: 25px;
  }
}
.p-mypage__service__flow .service_flow_box .flow_title .flow_toggle {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 13px;
  height: 13px;
  border-radius: 50px;
}
.p-mypage__service__flow .service_flow_box .flow_title .flow_toggle::before, .p-mypage__service__flow .service_flow_box .flow_title .flow_toggle::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background: rgba(94, 152, 200, 0.8);
  margin: auto;
  width: 100%;
  height: 1px;
}
.p-mypage__service__flow .service_flow_box .flow_title .flow_toggle::after {
  transform: rotate(90deg);
  transition: 0.3s;
}
.p-mypage__service__flow .service_flow_box .flow_title .flow_toggle.is-active::after {
  transform: rotate(0deg);
}
@media only screen and (max-width: 600px) {
  .p-mypage__service__flow .service_flow_box .flow_title .flow_toggle {
    display: block;
  }
}
.p-mypage__service__flow .service_flow_box p {
  margin-top: 10px;
}
@media only screen and (max-width: 600px) {
  .p-mypage__service__flow .service_flow_box p {
    display: none;
  }
}
.p-mypage .c-btn.-right, .p-mypage .-right.c-btn--line {
  margin-top: 15px;
}

.c-table tr.flash_more {
  display: none;
}
.c-table tr.flash_more.is-show {
  display: table-row;
}

.p-news .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-news .c-info {
  margin-bottom: 32px;
}
.p-news .c-info__list {
  margin-bottom: 0px;
}
.p-news .c-info__list li {
  position: relative;
}
.p-news .c-info__list li > a {
  cursor: pointer;
}
.p-news .c-info__list li .c-notice_wrap {
  position: absolute;
  display: flex;
  left: 70px;
  top: 16px;
  z-index: 20;
}
@media only screen and (max-width: 480px) {
  .p-news .c-info__list li .c-notice_wrap {
    top: 10px;
  }
}
.p-news .c-info__list li a dl dd {
  margin-top: 9px;
}
.p-news .c-info__list li a .news_txt {
  font-size: 1.4rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 5px;
  opacity: 0.65;
}
.p-news__detail.modal {
  width: 90%;
  padding: 10px 30px 0;
  max-width: 1080px;
}
.p-news__detail.modal .modal_foot {
  padding: 15px 10px;
}
@media only screen and (max-width: 600px) {
  .p-news__detail.modal {
    width: 90%;
    padding: 10px 0 0;
    max-width: 1080px;
  }
}

.p-policy .l-article p > b {
  display: block;
  margin-bottom: 8px;
}
.p-policy:not(.-ethical) .l-mv {
  background-image: url(/policy/parts/img/mv.jpg);
}
@media only screen and (max-width: 600px) {
  .p-policy:not(.-ethical) .l-mv__title {
    font-size: 2.3rem;
  }
}
.p-policy:not(.-ethical) .l-mv::before {
  display: none;
}
.p-policy.-ethical .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-policy__right {
  text-align: right;
}
.p-policy__right dt, .p-policy__right dd {
  display: inline;
}
.p-policy__btn--r {
  max-width: 350px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 600px) {
  .p-policy__btn--r {
    max-width: none;
  }
}
.p-policy__btn--l {
  max-width: 350px;
  margin: 0 auto 0 0;
}
@media only screen and (max-width: 600px) {
  .p-policy__btn--l {
    max-width: none;
  }
}
.p-policy__form {
  max-width: 250px;
  margin: 16px auto 0 0;
}
@media only screen and (max-width: 600px) {
  .p-policy__form {
    max-width: none;
  }
}
.p-policy__pmark {
  margin-bottom: 24px;
}
.p-policy__pmark .c-btn, .p-policy__pmark .c-btn--line {
  flex: 1;
  margin: 0 16px 0 0;
}
.p-policy__pmark p {
  width: 64px;
  margin-left: auto;
}
.p-policy__complaint {
  display: flex;
  justify-content: flex-start;
}
.p-policy__complaint dt {
  margin-right: 16px;
}
.p-policy__revision li {
  display: flex;
}
.p-policy__revision li span {
  margin-right: 24px;
}
.p-policy__bold {
  color: #0058aa;
  font-size: 2rem;
  font-weight: 600;
}
@media only screen and (max-width: 600px) {
  .p-policy__bold {
    font-size: 1.6rem;
  }
}
.p-policy__table th {
  width: 20%;
  text-align: left;
}
.p-policy__03__h3 {
  margin: 40px 0 16px;
}
.p-policy__agreement {
  height: 400px;
  margin-bottom: 32px;
  padding: 32px 32px 40px;
  overflow-y: scroll;
  background: #eff5f8;
}
.p-policy__agreement > article h4 {
  margin-top: 32px;
  margin-bottom: 8px;
  font-weight: bold;
}
.p-policy__agreement > article h4:first-of-type {
  margin-top: 0;
}
.p-policy__agreement > article .c-list--ol {
  background: none;
}
.p-policy__agreement > article .c-list--ol > li + li {
  margin-top: 4px;
}
.p-policy__agreement > article a {
  color: #0058aa;
  text-decoration: underline;
}
@media only screen and (max-width: 768px) {
  .p-policy__agreement {
    padding: 24px 24px 32px;
  }
}
@media only screen and (max-width: 480px) {
  .p-policy__agreement {
    height: 50vh;
    padding: 20px 20px 24px;
  }
}
.p-policy__agreement + .c-btn, .p-policy__agreement + .c-btn--line {
  max-width: 350px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 600px) {
  .p-policy__agreement + .c-btn, .p-policy__agreement + .c-btn--line {
    width: 100%;
    padding: 15px 0;
    max-width: none;
    font-size: 1.2rem;
  }
}

.p-press .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-press__mv {
  position: relative;
  background: url(/common/img/mv.jpg) no-repeat center/cover;
  padding-bottom: 50px;
  margin-bottom: 30px;
}
.p-press__mv::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(3, 68, 129, 0.3);
}
.p-press__mv .l-inner, .p-press__mv .l-inner--wide {
  position: relative;
  z-index: 2;
}
.p-press__mv__wrap {
  display: flex;
  justify-content: space-between;
  padding-top: 50px;
}
@media only screen and (max-width: 768px) {
  .p-press__mv__wrap {
    display: block;
  }
}
.p-press__mv__catch {
  width: 55%;
}
.p-press__mv__catch h1 {
  font-size: 3rem;
  color: #fff;
  padding-bottom: 0;
  padding-top: 0;
}
[lang=ja] .p-press__mv__catch h1 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-press__mv__catch h1 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-press__mv__catch h1 {
  font-family: "Roboto", sans-serif;
}

.p-press__mv__catch .-txt {
  color: #fff;
  line-height: 2;
  max-width: 485px;
  margin-top: 20px;
}
@media only screen and (max-width: 1024px) {
  .p-press__mv__catch .-txt {
    font-size: 1.4rem;
    margin: 20px 0 30px;
  }
}
.p-press__mv__catch .-search {
  display: flex;
  justify-content: space-between;
  margin: 30px 0 0;
}
.p-press__mv__catch .-search dt {
  position: relative;
  width: calc(80% - 7px);
  margin-right: 7px;
}
.p-press__mv__catch .-search dt input[type=text] {
  width: 100%;
  padding: 10px 35px 10px 10px;
  outline: none !important;
}
.p-press__mv__catch .-search dt input[type=text]:focus-visible {
  outline: none !important;
}
.p-press__mv__catch .-search dt .clearButton {
  color: #fff;
  position: absolute;
  right: 5px;
  top: 0;
  bottom: 0;
  z-index: 5;
  background: #333;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  margin: auto;
  cursor: pointer;
}
.p-press__mv__catch .-search dt .clearButton::before, .p-press__mv__catch .-search dt .clearButton::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #fff;
  width: 13px;
  height: 1px;
  margin: auto;
}
.p-press__mv__catch .-search dt .clearButton::before {
  transform: rotate(45deg);
}
.p-press__mv__catch .-search dt .clearButton::after {
  transform: rotate(-45deg);
}
.p-press__mv__catch .-search dd {
  width: 20%;
}
.p-press__mv__catch .-search dd input {
  color: #fff;
  font-size: 1.4rem;
  background: #129fe8;
  width: 100%;
  height: 100%;
  padding: 10px;
}
@media only screen and (max-width: 768px) {
  .p-press__mv__catch {
    width: 100%;
  }
  .p-press__mv__catch h1 {
    font-size: 2.2rem;
  }
  .p-press__mv__catch .-txt {
    display: none;
  }
}
.p-press__wrap {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .p-press__wrap {
    flex-wrap: wrap;
  }
}
.p-press__contents {
  position: relative;
  width: 670px;
}
@media screen and (min-width: 1025px) {
  .l-inner--wide .p-press__contents {
    width: calc(100% - 302px);
  }
}
@media only screen and (max-width: 1024px) {
  .p-press__contents {
    width: calc(100% - 212px);
  }
}
@media only screen and (max-width: 768px) {
  .p-press__contents {
    width: 100%;
  }
}
.p-press__aside {
  width: 250px;
}
@media only screen and (max-width: 1024px) {
  .p-press__aside {
    width: 180px;
  }
}
@media only screen and (max-width: 768px) {
  .p-press__aside {
    width: 100%;
    margin-top: 64px;
  }
}
.p-press__category {
  margin-bottom: 24px;
  padding: 20px;
  background: rgba(85, 85, 85, 0.1);
}
.p-press__category ul li {
  color: #0058aa;
  background: #fff;
  padding: 5px 12px;
  border: 1px solid #0058aa;
  border-radius: 5px;
  cursor: pointer;
}
.p-press__category ul li + li {
  margin-top: 15px;
}
.p-press__category ul li.-current {
  color: #fff;
  background: #0058aa;
}
@media only screen and (max-width: 1024px) {
  .p-press__category ul li {
    font-size: 1.4rem;
  }
}
.p-press__category input.-date {
  background: #fff;
  width: 100%;
  padding: 5px 12px;
  margin-top: 15px;
  border: 1px solid #0058aa;
  border-radius: 5px;
}
@media only screen and (max-width: 768px) {
  .p-press__aside .p-press__category {
    display: none;
  }
}
.p-press__refine {
  position: fixed;
  left: 0;
  bottom: -100%;
  z-index: 500;
  background: #fff;
  width: 100%;
  height: calc(100% - 70px);
  border-radius: 30px 30px 0 0;
  box-shadow: 0 -2px 18px rgba(6, 56, 114, 0.2);
  transition: bottom 0.5s;
}
@media screen and (min-width: 769px) {
  .p-press__refine {
    display: none !important;
  }
}
.p-press__refine.-show {
  bottom: 0;
  transition: bottom 0.5s;
}
.p-press__refine__header {
  color: #0058aa;
  font-size: 1.7rem;
  display: flex;
  align-items: center;
  position: relative;
  height: 50px;
  padding: 0 5%;
  border-bottom: 1px solid #c0d9ee;
}
.p-press__refine__header .-close_refine {
  display: block;
  position: absolute;
  right: 5%;
  top: 0;
  bottom: 0;
  background: #d7e0ef;
  width: 29px;
  height: 29px;
  margin: auto;
  border-radius: 50%;
  cursor: pointer;
}
.p-press__refine__header .-close_refine::before, .p-press__refine__header .-close_refine::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #0058aa;
  width: 14px;
  height: 1px;
  margin: auto;
}
.p-press__refine__header .-close_refine::before {
  transform: rotate(-45deg);
}
.p-press__refine__header .-close_refine::after {
  transform: rotate(45deg);
}
.p-press__refine__body {
  height: calc(100% - 130px);
  overflow-y: scroll;
}
.p-press__refine__body .option {
  padding: 0 5%;
  border-bottom: 1px solid #c0d9ee;
}
.p-press__refine__body .option h3 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 15px 0;
  cursor: pointer;
}
.p-press__refine__body .option h3 span {
  color: #136595;
  font-size: 1.2rem;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  width: 47%;
  margin-right: 30px;
  overflow: hidden;
}
.p-press__refine__body .option h3::after {
  content: "";
  display: block;
  position: absolute;
  right: 12px;
  top: 0;
  transform: rotate(45deg);
  bottom: 0;
  width: 9px;
  height: 9px;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  margin: auto;
}
.p-press__refine__body .p-press__category {
  display: none;
  background: transparent;
  padding: 0;
  margin: 0;
}
.p-press__refine__body .p-press__category ul {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 10px;
}
.p-press__refine__body .p-press__category ul li {
  font-size: 1.2rem;
  width: calc(50% - 5px);
  padding: 8px 6px;
  margin-bottom: 10px;
  margin-top: 0 !important;
}
.p-press__refine__body .p-press__category ul li:nth-of-type(odd) {
  margin-left: 10px;
}
.p-press__refine__body .p-press__category ul li:first-of-type {
  width: 100%;
  margin-left: 0;
}
.p-press__refine__body .p-press__category ul ~ input.-date {
  margin-top: -10px;
  margin-bottom: 20px;
}
.p-press__refine__footer {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 5%;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #fff;
  height: 80px;
  width: 100%;
}
.p-press__refine__footer input {
  padding: 10px;
  text-align: center;
  color: #fff;
  margin-top: 20px;
}
.p-press__refine__footer input[type=reset] {
  background: #333;
  width: calc(35% - 5px);
}
.p-press__refine__footer input[type=submit] {
  background: #129fe8;
  width: calc(65% - 5px);
}
@media only screen and (max-width: 768px) {
  .p-press__refine {
    display: block;
  }
}
.p-press__refine--btn {
  display: none;
}
@media only screen and (max-width: 768px) {
  .p-press__refine--btn {
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    right: 5%;
    bottom: 20px;
    z-index: 500;
    background: #333;
    width: 62px;
    height: 62px;
    border-radius: 50%;
    cursor: pointer;
  }
  .p-press__refine--btn figure {
    text-align: center;
  }
  .p-press__refine--btn figure img {
    width: 24px;
    height: auto;
  }
  .p-press__refine--btn figure figcaption {
    font-size: 1.1rem;
    margin-top: 3px;
  }
}
.p-press__inquiry {
  margin-bottom: 40px;
  border: 1px solid #136595;
  background: #fff;
}
.p-press__inquiry h3 {
  padding: 12px 0;
  background: #136595;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-align: center;
}
@media only screen and (max-width: 600px) {
  .p-press__inquiry h3 {
    padding: 10px 0;
  }
}
@media only screen and (max-width: 480px) {
  .p-press__inquiry h3 {
    font-size: 1.3rem;
    letter-spacing: 0.06em;
  }
}
.p-press__inquiry .c-flexbox--2 {
  margin: 24px 24px 32px;
}
@media only screen and (max-width: 600px) {
  .p-press__inquiry .c-flexbox--2 {
    margin: 20px 20px 24px;
  }
}
@media only screen and (max-width: 600px) {
  .p-press__inquiry .c-flexbox--2 {
    margin: 16px 16px 20px;
  }
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: calc((100% - 24px) / 2);
  margin-bottom: 0;
  padding: 12px 16px 20px;
  overflow: hidden;
  background: #0058aa;
  color: #fff;
  text-align: center;
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item::before {
  display: block;
  position: absolute;
  top: 0;
  right: 107%;
  width: 160%;
  height: 100%;
  transform: skewX(-45deg);
  background: #129fe8;
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item.p-press__inquiry__tel {
  background: #555;
  cursor: default;
  pointer-events: none;
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item.p-press__inquiry__tel::before {
  display: none;
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item.p-press__inquiry__tel.is-sp {
  background: #0058aa;
  cursor: pointer;
  pointer-events: auto;
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item.p-press__inquiry__tel.is-sp::before {
  display: block;
}
@media only screen and (max-width: 480px) {
  .p-press__inquiry .c-flexbox--2 .c-flexbox__item.p-press__inquiry__tel {
    padding: 10px 16px 16px;
  }
}
@media only screen and (max-width: 480px) {
  .p-press__inquiry .c-flexbox--2 .c-flexbox__item.p-press__inquiry__form {
    margin-top: 12px;
    padding: 14px 16px 14px;
  }
  .p-press__inquiry .c-flexbox--2 .c-flexbox__item.p-press__inquiry__form::before {
    right: 102%;
  }
}
@media only screen and (max-width: 600px) {
  .p-press__inquiry .c-flexbox--2 .c-flexbox__item {
    width: calc((100% - 12px) / 2);
  }
}
@media only screen and (max-width: 480px) {
  .p-press__inquiry .c-flexbox--2 .c-flexbox__item {
    width: 100%;
  }
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item dl {
  position: relative;
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item dl dt {
  font-size: 2.4rem;
  font-weight: bold;
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item dl dd {
  font-size: 1.2rem;
  line-height: 1.4;
}
@media only screen and (max-width: 600px) {
  .p-press__inquiry .c-flexbox--2 .c-flexbox__item dl dt {
    font-size: 2rem;
  }
  .p-press__inquiry .c-flexbox--2 .c-flexbox__item dl dd {
    font-size: 1.1rem;
  }
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item span {
  position: relative;
  font-weight: bold;
}
.p-press__inquiry .c-flexbox--2 .c-flexbox__item:hover::before {
  right: -20%;
  transition: right 0.3s ease-in-out;
}
.p-press .c-info {
  margin-bottom: 32px;
}
.p-press .c-info__list {
  margin-bottom: 0;
}
.p-press__article > table {
  width: 100%;
}
.p-press__article > table td hr {
  margin-bottom: 24px;
}
@media only screen and (max-width: 768px) {
  .p-press__article > table td hr {
    margin-bottom: 16px;
  }
}
.p-press__article > table td p {
  margin-bottom: 24px;
  line-height: 1.7;
}
.p-press__article > table td p > strong {
  font-size: 2rem;
  line-height: 1.4;
}
@media only screen and (max-width: 768px) {
  .p-press__article > table td p {
    margin-bottom: 20px;
    line-height: 1.56;
  }
  .p-press__article > table td p > strong {
    font-size: 1.8rem;
  }
}
.p-press__article > table td > table {
  width: 100%;
  margin-bottom: 24px;
  border: 1px solid #ccc;
}
.p-press__article > table td > table th, .p-press__article > table td > table td {
  padding: 12px;
  border: 1px solid #ccc;
}
.p-press__article > table td > table th > p strong, .p-press__article > table td > table td > p strong {
  display: inline-block;
  margin-bottom: 8px;
}
@media only screen and (max-width: 768px) {
  .p-press__article > table td > table {
    margin-bottom: 20px;
  }
  .p-press__article > table td > table th, .p-press__article > table td > table td {
    padding: 8px;
    font-size: 1.2rem;
  }
  .p-press__article > table td > table th > p strong, .p-press__article > table td > table td > p strong {
    font-size: 1.6rem;
  }
}
.p-press__article h2 {
  margin-bottom: 24px;
  padding-left: 16px;
  border-left: 1px solid #0058aa;
  color: #0058aa;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.4;
}
[lang=ja] .p-press__article h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-press__article h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-press__article h2 {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 768px) {
  .p-press__article h2 {
    margin-bottom: 16px;
    padding-left: 12px;
    font-size: 2.4rem;
    letter-spacing: 0.04em;
  }
}
@media only screen and (max-width: 480px) {
  .p-press__article h2 {
    font-size: 2.2rem;
  }
}
.p-press__article p.text3 {
  margin-bottom: 24px;
  line-height: 1.7;
}
@media only screen and (max-width: 768px) {
  .p-press__article p.text3 {
    margin-bottom: 20px;
    line-height: 1.56;
  }
}
.p-press__article .pr_lead {
  color: #0058aa;
  font-weight: bold;
}
.p-press__article blockquote.text3,
.p-press__article .text3 blockquote {
  margin-bottom: 24px;
  padding: 24px 24px 32px !important;
  background: #f6f6f6;
}
@media only screen and (max-width: 768px) {
  .p-press__article blockquote.text3,
  .p-press__article .text3 blockquote {
    margin-bottom: 20px;
    line-height: 1.56;
  }
}
.p-press__article dl.text3 dt {
  margin-bottom: 20px !important;
  line-height: 1.7 !important;
}
@media only screen and (max-width: 768px) {
  .p-press__article dl.text3 dt {
    margin-bottom: 16px !important;
    line-height: 1.56 !important;
  }
}
.p-press__article dl.text3 dd {
  margin-bottom: 32px !important;
  line-height: 1.7 !important;
}
@media only screen and (max-width: 768px) {
  .p-press__article dl.text3 dd {
    margin-bottom: 24px !important;
    line-height: 1.56 !important;
  }
}
.p-press__article tabel.text3,
.p-press__article .text3 table {
  width: 100%;
  margin-bottom: 24px !important;
}
.p-press__article tabel.text3 th, .p-press__article tabel.text3 td,
.p-press__article .text3 table th,
.p-press__article .text3 table td {
  padding: 12px;
}
@media only screen and (max-width: 768px) {
  .p-press__article tabel.text3,
  .p-press__article .text3 table {
    margin-bottom: 20px !important;
  }
  .p-press__article tabel.text3 th, .p-press__article tabel.text3 td,
  .p-press__article .text3 table th,
  .p-press__article .text3 table td {
    padding: 8px;
    font-size: 1.2rem;
    width: auto !important;
  }
}
.p-press__article a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-press__article a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-press .market_notice {
  margin-top: 64px;
  line-height: 1.7;
}
.p-press .market_notice a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-press .market_notice a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .p-press .market_notice {
    margin-top: 48px;
  }
}

.p-report .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-report .c-title--m {
  color: #136595;
}
.p-report .favorite_btn--l {
  font-size: 1.3rem;
  display: inline-block;
  border: 1px solid #bebebe;
  border-radius: 3px;
  cursor: pointer;
  position: relative;
  float: right;
  background: #fff;
  padding: 5px 7px 5px 40px;
}
[lang=ja] .p-report .favorite_btn--l {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-report .favorite_btn--l {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-report .favorite_btn--l {
  font-family: "Roboto", sans-serif;
}

.p-report .favorite_btn--l span {
  vertical-align: middle;
  line-height: 1;
  display: inline-block;
  width: 115px;
}
.p-report .favorite_btn--l i {
  position: absolute;
  left: 15px;
  top: 6px;
  width: 17px;
  height: 17px;
  background: url(/report/parts/img/fav_off.png) no-repeat center center;
  transition: 0.3s;
}
.p-report .favorite_btn--l.-checked i {
  background: url(/report/parts/img/fav_on.png) no-repeat center center;
}
@media only screen and (max-width: 600px) {
  .p-report .favorite_btn {
    float: none;
    width: 100%;
    margin-bottom: 1pc;
    text-align: center;
    padding: 5px 10px;
  }
  .p-report .favorite_btn span {
    line-height: 1.6;
    vertical-align: -1.5px;
    padding-left: 10px;
  }
  .p-report .favorite_btn i {
    position: static;
  }
}
.p-report .favorite_btn--s {
  display: block;
  width: 40px;
  height: 25px;
  background: url(../../report/parts/img/list_fav_off.png) no-repeat left center/100%;
  cursor: pointer;
}
.p-report .favorite_btn--s.-checked {
  background: url(../../report/parts/img/list_fav_on.png) no-repeat left center/100%;
}
.p-report__mv, .p-report__mv--top {
  position: relative;
  background: url(/report/parts/img/mv.jpg) no-repeat right -7vw center/auto 48vw;
  padding-bottom: 50px;
  padding-top: 50px;
  margin-bottom: 30px;
  box-shadow: 0 0px 15px rgba(115, 116, 135, 0.3);
}
@media only screen and (max-width: 1500px) {
  .p-report__mv, .p-report__mv--top {
    background: url(/report/parts/img/mv.jpg) no-repeat right -11vw center/auto 55vw;
  }
}
@media only screen and (max-width: 768px) {
  .p-report__mv, .p-report__mv--top {
    background: url(/report/parts/img/mv.jpg) no-repeat right -27vw center/cover;
  }
}
.p-report__mv--top {
  display: flex;
  align-items: center;
}
[lang=ja] .p-report__mv--top {
  min-height: 520px;
}
@media only screen and (max-width: 1024px) {
  [lang=ja] .p-report__mv--top {
    min-height: 506px;
  }
}
@media only screen and (max-width: 600px) {
  [lang=ja] .p-report__mv--top::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: auto auto;
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 3px, rgba(255, 255, 255, 0.2) 3px, rgba(255, 255, 255, 0.2) 6px);
  }
}
@media only screen and (max-width: 480px) {
  [lang=ja] .p-report__mv--top {
    background: url(/report/parts/img/mv.jpg) no-repeat right -47vw center/auto 110%;
  }
}

@media screen and (min-width: 769px) {
  [lang=en] .p-report__mv--top {
    height: 142px;
    padding: 0;
  }
  [lang=en] .p-report__mv--top .p-report__mv__catch h1 {
    line-height: 1.3;
  }
  [lang=en] .p-report__mv--top .p-report__mv__catch .-txt {
    display: block;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-top: 7px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 769px) {
  [lang=zh] .p-report__mv--top {
    height: 142px;
    padding: 0;
  }
  [lang=zh] .p-report__mv--top .p-report__mv__catch h1 {
    line-height: 1.3;
  }
  [lang=zh] .p-report__mv--top .p-report__mv__catch .-txt {
    display: block;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-top: 7px;
    margin-bottom: 0;
  }
}

.p-report__mv--top .p-report__mv__catch .-search {
  margin-bottom: 35px;
}
.p-report__mv .l-inner, .p-report__mv--top .l-inner, .p-report__mv .l-inner--wide, .p-report__mv--top .l-inner--wide {
  position: relative;
  z-index: 2;
}
.p-report__mv .-logout, .p-report__mv--top .-logout {
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  display: block;
  position: absolute;
  right: 0;
  top: 20px;
  width: 160px;
  padding: 7px 0;
  box-sizing: border-box;
  border: 1px solid #fff;
  cursor: pointer;
  transition: 0.3s;
}
.p-report__mv .-logout span, .p-report__mv--top .-logout span {
  padding-left: 32px;
  background: url(../../common/img/logout_ico.png) no-repeat left center/18px 18px;
}
.p-report__mv .-logout:hover, .p-report__mv--top .-logout:hover {
  background: #034481;
}
@media only screen and (max-width: 768px) {
  .p-report__mv .-logout, .p-report__mv--top .-logout {
    font-size: 1.2rem;
    top: 8px;
    width: 120px;
    padding: 6px 0;
    border-radius: 30px;
  }
  .p-report__mv .-logout span, .p-report__mv--top .-logout span {
    padding-left: 20px;
    background: url(../../common/img/logout_ico.png) no-repeat left center/14px 14px;
  }
}
.p-report__mv__wrap {
  width: 60%;
}
@media only screen and (max-width: 768px) {
  .p-report__mv__wrap {
    width: 100%;
  }
}
.p-report__mv .l-mv__title, .p-report__mv--top .l-mv__title {
  color: #0058aa;
  font-size: 3rem;
  font-weight: bold;
  padding-bottom: 0;
  padding-top: 0;
}
[lang=ja] .p-report__mv .l-mv__title, [lang=ja] .p-report__mv--top .l-mv__title {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-report__mv .l-mv__title, [lang=en] .p-report__mv--top .l-mv__title {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-report__mv .l-mv__title, [lang=zh] .p-report__mv--top .l-mv__title {
  font-family: "Roboto", sans-serif;
}

.p-report__mv .l-mv__title span, .p-report__mv--top .l-mv__title span {
  color: #5e8dc9;
  font-weight: normal;
}
.p-report__mv .l-mv__title span::before, .p-report__mv--top .l-mv__title span::before {
  background: #5e8dc9;
}
.p-report__mv .l-mv__title b, .p-report__mv--top .l-mv__title b {
  background: rgba(255, 255, 255, 0.8);
}
.p-report__mv__catch .-txt {
  line-height: 2.2;
  max-width: 485px;
  margin-top: 20px;
}
[lang=ja] .p-report__mv__catch .-txt {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-report__mv__catch .-txt {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-report__mv__catch .-txt {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 1024px) {
  .p-report__mv__catch .-txt {
    font-size: 1.4rem;
    margin: 20px 0 30px;
  }
}
[lang=en] .p-report__mv__catch .-txt {
  display: none;
}

[lang=zh] .p-report__mv__catch .-txt {
  display: none;
}

.p-report__mv__catch .-search {
  display: flex;
  justify-content: space-between;
  margin: 30px 0 0;
}
.p-report__mv__catch .-search dt {
  position: relative;
  width: calc(100% - 107px);
  margin-right: 7px;
}
.p-report__mv__catch .-search dt input[type=text] {
  width: 100%;
  padding: 10px 35px 10px 10px;
}
.p-report__mv__catch .-search dt input[type=text]:focus-visible {
  outline: none !important;
}
.p-report__mv__catch .-search dt .clearButton {
  color: #fff;
  position: absolute;
  right: 5px;
  top: 0;
  bottom: 0;
  z-index: 5;
  background: #333;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  margin: auto;
  cursor: pointer;
}
.p-report__mv__catch .-search dt .clearButton::before, .p-report__mv__catch .-search dt .clearButton::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #fff;
  width: 13px;
  height: 1px;
  margin: auto;
}
.p-report__mv__catch .-search dt .clearButton::before {
  transform: rotate(45deg);
}
.p-report__mv__catch .-search dt .clearButton::after {
  transform: rotate(-45deg);
}
.p-report__mv__catch .-search dd {
  width: 100px;
}
.p-report__mv__catch .-search dd input {
  color: #fff;
  font-size: 1.4rem;
  background: #129fe8;
  width: 100%;
  height: 100%;
  padding: 10px;
}
@media only screen and (max-width: 768px) {
  .p-report__mv__catch {
    width: 100%;
  }
  .p-report__mv__catch h1 {
    font-size: 2.2rem;
  }
  .p-report__mv__catch .-txt {
    display: none;
  }
}
.p-report__mv__sign {
  position: relative;
}
.p-report__mv__sign .c-btn.-btn_login, .p-report__mv__sign .-btn_login.c-btn--line {
  display: none;
  background: #129fe8;
}
.p-report__mv__sign .c-btn.-btn_login::before, .p-report__mv__sign .-btn_login.c-btn--line::before {
  background: rgba(255, 255, 255, 0.16);
}
.p-report__mv__sign .c-btn.-btn_regist, .p-report__mv__sign .-btn_regist.c-btn--line {
  display: none;
  background: #dff4ff;
  margin-top: 10px;
}
.p-report__mv__sign .c-btn.-btn_regist::before, .p-report__mv__sign .-btn_regist.c-btn--line::before {
  background: rgba(255, 255, 255, 0.4);
}
.p-report__mv__sign .c-btn.-btn_regist span, .p-report__mv__sign .-btn_regist.c-btn--line span {
  color: #0085ca;
}
.p-report__mv__sign .c-btn.-btn_regist span i::before, .p-report__mv__sign .-btn_regist.c-btn--line span i::before {
  background: #0085ca;
}
.p-report__mv__sign .c-btn.-btn_regist span i::after, .p-report__mv__sign .-btn_regist.c-btn--line span i::after {
  border-color: #0085ca;
}
.p-report__mv__sign h2 {
  color: rgba(48, 69, 98, 0.6);
  font-weight: bold;
  line-height: 1.3;
  font-size: 1.8rem;
  margin-bottom: 15px;
}
[lang=ja] .p-report__mv__sign h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-report__mv__sign h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-report__mv__sign h2 {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 768px) {
  .p-report__mv__sign form {
    display: none;
  }
}
.p-report__mv__sign__wrap {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  flex-flow: row wrap;
  margin-bottom: 5px;
}
.p-report__mv__sign__wrap ul {
  width: calc(100% - 107px);
}
.p-report__mv__sign__wrap ul li input {
  font-size: 1.4rem;
  width: 100%;
}
.p-report__mv__sign__wrap ul li + li {
  margin-top: 10px;
}
@media only screen and (max-width: 600px) {
  .p-report__mv__sign__wrap ul {
    width: 100%;
  }
}
.p-report__mv__sign__wrap .-enter {
  color: #fff;
  font-size: 1.3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #129fe8;
  width: 100px;
  padding: 0 9px;
  margin-left: 7px;
  transition: 0.3s;
  border: 1px solid #fff;
  overflow: hidden;
}
@media only screen and (max-width: 600px) {
  .p-report__mv__sign__wrap .-enter {
    margin-top: 15px;
    width: 150px;
  }
}
.p-report__mv__sign__wrap .-enter:hover {
  color: #fff;
  background: #129fe8;
}
.p-report__mv__sign__wrap .-enter:hover::before {
  right: -50%;
  transition: right 0.3s ease-in-out;
}
.p-report__mv__sign__wrap .-enter span {
  display: inline-block;
  background: url(../../common/img/login_ico.png) no-repeat left center/16px auto;
  padding: 8px 0 8px 27px;
}
.p-report__mv__sign__wrap .-enter::before {
  display: block;
  position: absolute;
  top: 0;
  right: 150%;
  width: 200%;
  height: 100%;
  transform: skewX(-45deg);
  background: rgba(255, 255, 255, 0.16);
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-report__mv__sign p.error span {
  color: #fff;
  font-size: 1.2rem;
  display: inline-block;
  background: #fc0339;
  padding: 2px 5px;
}
.p-report__mv__sign a.-pw {
  color: #0058aa;
  text-decoration: underline;
  font-size: 1.3rem;
  display: inline-block;
  margin-top: 10px;
}
@media only screen and (max-width: 768px) {
  .p-report__mv__sign .c-btn, .p-report__mv__sign .c-btn--line {
    width: 100%;
  }
  .p-report__mv__sign .c-btn.-btn_login, .p-report__mv__sign .-btn_login.c-btn--line, .p-report__mv__sign .c-btn.-btn_regist, .p-report__mv__sign .-btn_regist.c-btn--line {
    display: block;
  }
}
.p-report__mv__sign.-done ul {
  display: flex;
  justify-content: space-between;
}
.p-report__mv__sign.-done ul li {
  width: calc(50% - 5px);
}
.p-report__mv__sign.-done ul li img {
  width: 100%;
}
@media only screen and (max-width: 600px) {
  .p-report__mv__sign.-done {
    margin-top: 20px;
  }
  .p-report__mv__sign.-done ul {
    display: block;
  }
  .p-report__mv__sign.-done ul li {
    width: 100%;
  }
  .p-report__mv__sign.-done ul li + li {
    margin-top: 10px;
  }
}
.p-report__wrap {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .p-report__wrap {
    flex-wrap: wrap;
  }
}
.p-report__contents {
  position: relative;
  width: 670px;
}
@media screen and (min-width: 1025px) {
  .l-inner--wide .p-report__contents {
    width: calc(100% - 302px);
  }
}
@media only screen and (max-width: 1024px) {
  .p-report__contents {
    width: calc(100% - 212px);
  }
}
@media only screen and (max-width: 768px) {
  .p-report__contents {
    width: 100%;
  }
}
.p-report__aside {
  width: 250px;
}
@media only screen and (max-width: 1024px) {
  .p-report__aside {
    width: 180px;
  }
}
@media only screen and (max-width: 768px) {
  .p-report__aside {
    width: 100%;
    margin-top: 64px;
  }
}
.p-report__others, .p-report__others--rel, .p-report__others--revised, .p-report__others--media {
  margin-bottom: 24px;
  padding: 40px 32px;
}
@media only screen and (max-width: 768px) {
  .p-report__others, .p-report__others--rel, .p-report__others--revised, .p-report__others--media {
    padding: 20px 4% 24px;
  }
}
.p-report__others.-more, .-more.p-report__others--rel, .-more.p-report__others--revised, .-more.p-report__others--media {
  position: relative;
  padding-bottom: 83px;
}
.p-report__others.-more .c-btn--line, .-more.p-report__others--rel .c-btn--line, .-more.p-report__others--revised .c-btn--line, .-more.p-report__others--media .c-btn--line {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  margin: auto;
  padding: 10px 0;
  width: calc(100% - 64px);
  border-color: #0058aa;
}
.p-report__others.-more .c-btn--line::before, .-more.p-report__others--rel .c-btn--line::before, .-more.p-report__others--revised .c-btn--line::before, .-more.p-report__others--media .c-btn--line::before {
  background: #0058aa;
}
.p-report__others.-more .c-btn--line span, .-more.p-report__others--rel .c-btn--line span, .-more.p-report__others--revised .c-btn--line span, .-more.p-report__others--media .c-btn--line span {
  color: #0058aa;
}
.p-report__others.-more .c-btn--line span i, .-more.p-report__others--rel .c-btn--line span i, .-more.p-report__others--revised .c-btn--line span i, .-more.p-report__others--media .c-btn--line span i {
  background-image: url(/common/img/list_ico_blue.gif);
}
.p-report__others.-more .c-btn--line:hover span, .-more.p-report__others--rel .c-btn--line:hover span, .-more.p-report__others--revised .c-btn--line:hover span, .-more.p-report__others--media .c-btn--line:hover span {
  color: #fff;
}
.p-report__others.-more .c-btn--line:hover span i, .-more.p-report__others--rel .c-btn--line:hover span i, .-more.p-report__others--revised .c-btn--line:hover span i, .-more.p-report__others--media .c-btn--line:hover span i {
  background-image: url(/common/img/list_ico.gif);
}
@media only screen and (max-width: 768px) {
  .p-report__others.-more .c-btn--line, .-more.p-report__others--rel .c-btn--line, .-more.p-report__others--revised .c-btn--line, .-more.p-report__others--media .c-btn--line {
    width: 92%;
  }
}
.p-report__others--revised, .p-report__others--media {
  background: rgba(18, 159, 232, 0.1);
}
.p-report__others--revised h3, .p-report__others--media h3 {
  margin-bottom: 24px;
  padding: 8px 0;
  border-top: 1px solid #129fe8;
  border-bottom: 1px dotted #4fb6eb;
  color: #129fe8;
  letter-spacing: 0.06em;
  text-align: center;
}
.p-report__others--media > ul {
  font-size: 1.3rem;
}
.p-report__others--media > ul > li + li {
  margin-top: 30px;
}
.p-report__others--media > ul > li a {
  transition: color 0.3s;
}
.p-report__others--media > ul > li a dl dt {
  opacity: 0.7;
  margin-bottom: 5px;
}
.p-report__others--media > ul > li a dl dd {
  font-size: 1.2rem;
  display: inline-block;
  background: #fff;
  border: 1px solid;
  border-radius: 3px;
  margin-bottom: 5px;
  margin-right: 5px;
  padding: 2px 5px;
}
.p-report__others--media > ul > li a:hover {
  color: #0058aa;
}
.p-report__others--rel {
  background: rgba(85, 85, 85, 0.1);
}
.p-report__others--rel h3 {
  margin-bottom: 24px;
  padding: 8px 0;
  border-top: 1px solid #555;
  border-bottom: 1px dotted #888;
  letter-spacing: 0.06em;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-report__others__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
.p-report__others__list > li {
  position: relative;
}
.p-report__others__list > li + li {
  margin-top: 30px;
}
.p-report__others__list > li > a {
  display: block;
}
.p-report__others__list > li > a figure {
  text-align: center;
}
.p-report__others__list > li > a figure img {
  margin-bottom: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
  transition: box-shadow 0.3s ease-in-out;
}
@media only screen and (max-width: 1024px) {
  .p-report__others__list > li > a figure img {
    width: 100px;
  }
}
.p-report__others__list > li > a figure figcaption {
  color: #333;
  font-size: 1.2rem;
  text-align: left;
  transition: color 0.3s ease-in-out;
}
.p-report__others__list > li > a:hover figure img {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  transition: box-shadow 0.3s ease-in-out;
}
.p-report__others__list > li > a:hover figure figcaption {
  color: #0058aa;
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .p-report__others__list > li {
    display: flex;
    justify-content: center;
    align-content: space-between;
    flex-flow: row wrap;
    width: 50%;
    padding: 0 2%;
  }
  .p-report__others__list > li:nth-child(2) {
    margin-top: 0;
  }
  .p-report__others__list > li + li {
    margin-top: 24px;
  }
  .p-report__others__list > li > a figure img {
    width: 80%;
    max-width: 120px;
    margin: 0 auto 10px;
  }
}
.p-report__cat {
  display: flex;
  margin-bottom: 14px;
}
.p-report__cat > li {
  margin-right: 10px;
  padding: 2px 10px;
  border: 1px solid #136595;
  border-radius: 3px;
  color: #136595;
  font-size: 1.2rem;
}
@media only screen and (max-width: 768px) {
  .p-report__cat {
    flex-wrap: wrap;
  }
  .p-report__cat > li {
    padding: 3px 8px;
    font-size: 1.1rem;
  }
}
.p-report__category {
  margin-bottom: 24px;
  padding: 20px;
  background: rgba(85, 85, 85, 0.1);
}
.p-report__category ul li {
  color: #0058aa;
  background: #fff;
  padding: 5px 12px;
  border: 1px solid #0058aa;
  border-radius: 5px;
  cursor: pointer;
}
.p-report__category ul li + li {
  margin-top: 15px;
}
.p-report__category ul li.-current {
  color: #fff;
  background: #0058aa;
}
@media only screen and (max-width: 1024px) {
  .p-report__category ul li {
    font-size: 1.4rem;
  }
}
.p-report__category input.-date {
  background: #fff;
  width: 100%;
  padding: 5px 12px;
  margin-top: 15px;
  border: 1px solid #0058aa;
  border-radius: 5px;
}
@media only screen and (max-width: 768px) {
  .p-report__aside .p-report__category {
    display: none;
  }
}
.p-report__refine {
  position: fixed;
  left: 0;
  bottom: -100%;
  z-index: 500;
  background: #fff;
  width: 100%;
  height: calc(100% - 70px);
  border-radius: 30px 30px 0 0;
  box-shadow: 0 -2px 18px rgba(6, 56, 114, 0.2);
  transition: bottom 0.5s;
}
@media screen and (min-width: 769px) {
  .p-report__refine {
    display: none !important;
  }
}
.p-report__refine.-show {
  bottom: 0;
  transition: bottom 0.5s;
}
.p-report__refine__header {
  color: #0058aa;
  font-size: 1.7rem;
  display: flex;
  align-items: center;
  position: relative;
  height: 50px;
  padding: 0 5%;
  border-bottom: 1px solid #c0d9ee;
}
.p-report__refine__header .-close_refine {
  display: block;
  position: absolute;
  right: 5%;
  top: 0;
  bottom: 0;
  background: #d7e0ef;
  width: 29px;
  height: 29px;
  margin: auto;
  border-radius: 50%;
  cursor: pointer;
}
.p-report__refine__header .-close_refine::before, .p-report__refine__header .-close_refine::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #0058aa;
  width: 14px;
  height: 1px;
  margin: auto;
}
.p-report__refine__header .-close_refine::before {
  transform: rotate(-45deg);
}
.p-report__refine__header .-close_refine::after {
  transform: rotate(45deg);
}
.p-report__refine__body {
  height: calc(100% - 130px);
  overflow-y: scroll;
}
.p-report__refine__body .option {
  padding: 0 5%;
  border-bottom: 1px solid #c0d9ee;
}
.p-report__refine__body .option h3 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 15px 0;
  cursor: pointer;
}
.p-report__refine__body .option h3 span {
  color: #136595;
  font-size: 1.2rem;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  width: 47%;
  margin-right: 30px;
  overflow: hidden;
}
.p-report__refine__body .option h3::after {
  content: "";
  display: block;
  position: absolute;
  right: 12px;
  top: 0;
  transform: rotate(45deg);
  bottom: 0;
  width: 9px;
  height: 9px;
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
  margin: auto;
}
.p-report__refine__body .p-report__category {
  display: none;
  background: transparent;
  padding: 0;
  margin: 0;
}
.p-report__refine__body .p-report__category ul {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 10px;
}
.p-report__refine__body .p-report__category ul li {
  font-size: 1.2rem;
  width: calc(50% - 5px);
  padding: 8px 6px;
  margin-bottom: 10px;
  margin-top: 0 !important;
}
.p-report__refine__body .p-report__category ul li:nth-of-type(odd) {
  margin-left: 10px;
}
.p-report__refine__body .p-report__category ul li:first-of-type {
  width: 100%;
  margin-left: 0;
}
.p-report__refine__footer {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 5%;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #fff;
  height: 80px;
  width: 100%;
}
.p-report__refine__footer input {
  padding: 10px;
  text-align: center;
  color: #fff;
  margin-top: 20px;
}
.p-report__refine__footer input[type=reset] {
  background: #333;
  width: calc(35% - 5px);
}
.p-report__refine__footer input[type=submit] {
  background: #129fe8;
  width: calc(65% - 5px);
}
@media only screen and (max-width: 768px) {
  .p-report__refine {
    display: block;
  }
}
.p-report__refine--btn {
  display: none;
}
@media only screen and (max-width: 768px) {
  .p-report__refine--btn {
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    right: 5%;
    bottom: 20px;
    z-index: 500;
    background: #333;
    width: 62px;
    height: 62px;
    border-radius: 50%;
    cursor: pointer;
  }
  .p-report__refine--btn figure {
    text-align: center;
  }
  .p-report__refine--btn figure img {
    width: 24px;
    height: auto;
  }
  .p-report__refine--btn figure figcaption {
    font-size: 1.1rem;
    margin-top: 3px;
  }
}
.p-report__sort {
  display: flex;
  justify-content: space-between;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .p-report__sort {
    flex-flow: wrap column;
    justify-content: center;
  }
}
@media only screen and (max-width: 1024px) {
  .p-report__sort > .pager {
    width: 100%;
    margin-top: 20px;
  }
}
.p-report__sort__issue {
  display: flex;
  width: calc(50% - 5px);
}
@media only screen and (max-width: 1024px) {
  .p-report__sort__issue {
    width: 100%;
    margin-bottom: 24px;
  }
}
.p-report__sort__issue > li {
  width: 50%;
}
.p-report__sort__issue > li > a {
  display: block;
  height: 40px;
  background: #e4eef8;
  color: #0058aa;
  font-size: 1.4rem;
  line-height: 40px;
  text-align: center;
}
.p-report__sort__issue > li > a span {
  display: inline-block;
  position: relative;
  padding-right: 20px;
}
.p-report__sort__issue > li > a span::after {
  display: block;
  position: absolute;
  top: 19px;
  right: 0;
  width: 7px;
  height: 7px;
  margin: auto;
  transform: rotate(45deg);
  border-top: 2px solid #0058aa;
  border-left: 2px solid #0058aa;
  content: "";
}
.p-report__sort__issue > li > a.is-active {
  background: #0058aa;
  color: #fff;
}
.p-report__sort__issue > li > a.is-active span::after {
  top: 15px;
  transform: rotate(-135deg);
  border-color: #fff;
}
@media only screen and (max-width: 480px) {
  .p-report__sort__issue > li > a {
    font-size: 1.2rem;
  }
  .p-report__sort__issue > li > a span {
    padding-right: 16px;
  }
}
.p-report__sort__cat {
  display: none;
  z-index: 20;
  position: absolute;
  top: 40px;
  left: 0;
  width: 100%;
  padding: 32px 32px 40px;
  background: #f2f2f2;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}
@media only screen and (max-width: 1024px) {
  .p-report__sort__cat {
    padding: 20px 3%;
  }
}
.p-report__sort__cat__search {
  display: flex;
  justify-content: space-between;
  margin-top: 16px;
  padding: 16px;
  background: url(/report/parts/img/slash-bg.gif);
}
.p-report__sort__cat__search__input {
  display: block;
  position: relative;
  width: calc(100% - 250px - 16px);
}
.p-report__sort__cat__search__input input[type=text] {
  width: 100%;
  padding: 10px 20px;
  border-radius: 4px;
  background: #fff;
}
.p-report__sort__cat__search__input a {
  display: block;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  width: 24px;
  height: 24px;
  margin: auto;
  border-radius: 50%;
  background: #111;
  cursor: pointer;
  transition: background 0.3s ease-in-out;
}
.p-report__sort__cat__search__input a::before, .p-report__sort__cat__search__input a::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #fff;
  width: 11px;
  height: 1px;
  margin: auto;
}
.p-report__sort__cat__search__input a::before {
  transform: rotate(-45deg);
}
.p-report__sort__cat__search__input a::after {
  transform: rotate(45deg);
}
.p-report__sort__cat__search__input a:hover {
  background: #555;
  transition: background 0.3s ease-in-out;
}
.p-report__sort__cat__search button[type=submit] {
  position: relative;
  width: 250px;
  overflow: hidden;
  background: #0058aa;
  color: #fff;
}
.p-report__sort__cat__search button[type=submit]::before {
  display: block;
  position: absolute;
  top: 0;
  right: calc(100% + 6px);
  width: 160%;
  height: 100%;
  transform: skewX(-45deg);
  background: #129fe8;
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-report__sort__cat__search button[type=submit] span {
  display: inline-block;
  position: relative;
  padding-right: 32px;
}
.p-report__sort__cat__search button[type=submit] span::after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 16px;
  height: 15px;
  margin: auto;
  background: url(/report/parts/img/search_ico.png) center/contain no-repeat;
  content: "";
}
.p-report__sort__cat__search button[type=submit]:hover::before {
  right: -30px;
  transition: right 0.3s ease-in-out;
}
@media only screen and (max-width: 1024px) {
  .p-report__sort__cat__search {
    flex-wrap: wrap;
    justify-content: center;
    padding: 10px;
  }
  .p-report__sort__cat__search__input {
    width: 100%;
  }
  .p-report__sort__cat__search__input input[type=text] {
    padding: 12px 16px;
  }
  .p-report__sort__cat__search button[type=submit] {
    width: 100%;
    margin-top: 12px;
    padding: 12px;
  }
}
.p-report__overview {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .p-report__overview {
    position: relative;
    margin-top: 24px;
    padding-bottom: 64px;
  }
}
@media only screen and (max-width: 480px) {
  .p-report__overview {
    padding-bottom: 125px;
  }
}
.p-report__overview__fig {
  width: 120px;
}
.p-report__overview__fig > img {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.16);
}
.p-report__overview__fig > figcaption {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 8px;
  color: #888;
  font-size: 1.2rem;
}
.p-report__overview__fig__issue > i {
  margin-left: 2px;
}
@media only screen and (max-width: 480px) {
  .p-report__overview__fig {
    width: 100px;
  }
  .p-report__overview__fig > figcaption {
    font-size: 1rem;
  }
}
.p-report__overview__txt {
  width: 500px;
}
@media screen and (min-width: 1025px) {
  .l-inner--wide .p-report__overview__txt {
    width: calc(100% - 180px);
  }
}
.p-report__overview__txt > p > a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-report__overview__txt > p > a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-report__overview__txt__btns {
  display: flex;
  justify-content: space-between;
}
.p-report__overview__txt__btns.-single {
  justify-content: flex-end;
}
.p-report__overview__txt__btns > li {
  margin-top: 15px;
  width: calc((100% - 20px) / 2);
}
.p-report__overview__txt__btns > li.consider {
  margin-left: auto;
}
.p-report__overview__txt__btns > li.consider .c-btn, .p-report__overview__txt__btns > li.consider .c-btn--line {
  background: #c93a3a;
}
.p-report__overview__txt__btns > li.consider .c-btn::before, .p-report__overview__txt__btns > li.consider .c-btn--line::before {
  background: #8d2424;
}
.p-report__overview__txt__btns > li.sample {
  margin-right: auto;
}
.p-report__overview__txt__btns > li.sample .c-btn, .p-report__overview__txt__btns > li.sample .c-btn--line {
  background: #bbb;
}
.p-report__overview__txt__btns > li.sample .c-btn::before, .p-report__overview__txt__btns > li.sample .c-btn--line::before {
  background: #888;
}
@media only screen and (max-width: 1024px) {
  .p-report__overview__txt {
    width: calc(100% - 160px);
  }
  .p-report__overview__txt > p {
    line-height: 1.6;
  }
  .p-report__overview__txt__btns {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .p-report__overview__txt__btns > li {
    width: 49%;
  }
}
@media only screen and (max-width: 768px) {
  .p-report__overview__txt__btns {
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 480px) {
  .p-report__overview__txt {
    width: calc(100% - 125px);
  }
  .p-report__overview__txt__btns {
    flex-wrap: wrap;
  }
  .p-report__overview__txt__btns > li {
    width: 100%;
  }
}
.p-report__index {
  margin-bottom: 40px;
  border-radius: 3px;
  background: #eff3f6;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
  overflow: hidden;
}
.p-report__index > h3 {
  padding: 10px 24px;
  background: #46515c;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
}
@media only screen and (max-width: 768px) {
  .p-report__index > h3 {
    padding: 10px 4%;
    font-size: 1.4rem;
  }
}
.p-report__index > div {
  padding: 20px 24px 30px;
}
.p-report__index > div pre {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  white-space: pre-wrap;
  word-wrap: break-word;
}
.p-report__index > div pre.-more {
  display: none;
}
@media only screen and (max-width: 768px) {
  .p-report__index > div {
    padding: 16px 4% 20px;
  }
  .p-report__index > div pre {
    font-size: 1.2rem;
  }
}
.p-report__index > div .-summary {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-flow: row wrap;
}
.p-report__index > div .-summary img {
  width: calc(100% - 240px);
  height: auto;
}
.p-report__index > div .-summary figcaption {
  width: 220px;
}
@media only screen and (max-width: 768px) {
  .p-report__index > div .-summary img {
    width: 100%;
  }
  .p-report__index > div .-summary figcaption {
    width: 100%;
    margin-top: 16px;
  }
}
.p-report__index__opener {
  display: block;
  margin-top: 24px;
  padding: 8px 16px;
  background: #fff;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  text-align: center;
  font-size: 1.4rem;
  transition: border-color 0.3s ease-in-out;
}
.p-report__index__opener > span {
  display: inline-block;
  padding-right: 26px;
  position: relative;
}
.p-report__index__opener > span .-close {
  display: none;
}
.p-report__index__opener > span::after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: rotate(45deg);
  position: absolute;
  top: 6px;
  right: 0;
  transition: top 0.3s ease-in-out, transform 0.3s ease-in-out;
}
.p-report__index__opener:hover {
  border-bottom-color: #333;
}
.p-report__index__opener.is-active span .-open {
  display: none;
}
.p-report__index__opener.is-active span .-close {
  display: inherit;
}
.p-report__index__opener.is-active span::after {
  transform: rotate(-135deg);
  top: 9px;
  transition: top 0.3s ease-in-out, transform 0.3s ease-in-out;
}
.p-report__index__opener.is-active:hover {
  border-top-color: #333;
  border-bottom-color: #fff;
}
.p-report__news {
  margin-bottom: 40px;
  overflow: hidden;
  border-radius: 3px;
  background: #eff3f6;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
}
.p-report__news > h3 {
  padding: 10px 24px;
  background: #46515c;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
}
@media only screen and (max-width: 768px) {
  .p-report__news > h3 {
    padding: 10px 4%;
    font-size: 1.4rem;
  }
}
.p-report__news__list > li > a {
  display: block;
  position: relative;
  padding: 12px 60px 12px 32px;
  font-size: 1.4rem;
}
.p-report__news__list > li > a::before {
  display: block;
  position: absolute;
  top: 0;
  right: 150%;
  width: 200%;
  height: 100%;
  transform: skewX(-45deg);
  background: rgba(0, 0, 0, 0.05);
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-report__news__list > li > a i {
  display: block;
  position: relative;
  position: absolute;
  top: 0;
  right: 24px;
  bottom: 0;
  width: 12px;
  height: 19px;
  margin: auto;
  transition: right 0.3s ease-in-out;
}
.p-report__news__list > li > a i::before, .p-report__news__list > li > a i::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.p-report__news__list > li > a i::before {
  width: 100%;
  height: 1px;
  background: #0058aa;
}
.p-report__news__list > li > a i::after {
  right: 0;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  border-top: 1px solid #0058aa;
  border-right: 1px solid #0058aa;
}
.p-report__news__list > li > a:hover::before {
  right: -50%;
  transition: right 0.3s ease-in-out;
}
.p-report__news__list > li > a:hover i {
  right: 20px;
  transition: right 0.3s ease-in-out;
}
.p-report__news__list > li > a .pdf {
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
}
.p-report__news__list > li > a .pdf ~ i {
  display: none;
}
@media only screen and (max-width: 768px) {
  .p-report__news__list > li > a {
    padding: 12px 40px 12px 4%;
    font-size: 1.4rem;
  }
  .p-report__news__list > li > a i {
    right: 4%;
  }
  .p-report__news__list > li > a:hover i {
    right: 3%;
  }
}
.p-report__news__list > li:nth-child(2n-1) > a {
  background: #e5eaee;
}
.p-report__price {
  margin-bottom: 16px;
  overflow: hidden;
  border-radius: 3px;
  background: #eff3f6;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
}
.p-report__price > h3 {
  padding: 10px 24px;
  background: #038531;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
}
@media only screen and (max-width: 768px) {
  .p-report__price > h3 {
    padding: 10px 4%;
    font-size: 1.4rem;
  }
}
.p-report__price__table {
  width: 100%;
  font-size: 1.4rem;
}
@media only screen and (max-width: 480px) {
  .p-report__price__table {
    font-size: 1.2rem;
  }
}
.p-report__price__table tr:nth-child(2n-1) {
  background: #dbf0e2;
}
.p-report__price__table tr:nth-child(2n-1):has(> td[rowspan="2"]) + tr {
  background: #dbf0e2;
}
.p-report__price__table tr:nth-child(2n-1):has(> td[rowspan="2"]) + tr td {
  padding-top: 0px;
}
.p-report__price__table tr:nth-child(2n) {
  background: #edf9f1;
}
.p-report__price__table tr:nth-child(2n):has(> td[rowspan="2"]) + tr {
  background: #edf9f1;
}
.p-report__price__table tr:nth-child(2n):has(> td[rowspan="2"]) + tr td {
  padding-top: 0px;
}
.p-report__price__table tr.-pre_order {
  background: #edf9f1;
}
.p-report__price__table tr.-pre_order td.-ico {
  vertical-align: top;
}
.p-report__price__table tr.-pre_order td[colspan="5"] {
  padding: 10px 0;
}
.p-report__price__table tr.-pre_order td[colspan="5"] dl {
  display: flex;
}
.p-report__price__table tr.-pre_order td[colspan="5"] dl > div {
  display: flex;
  align-items: flex-start;
}
.p-report__price__table tr.-pre_order td[colspan="5"] dl > div + div {
  margin-left: 32px;
}
.p-report__price__table tr.-pre_order td[colspan="5"] dl > div dt {
  padding-top: 5px;
}
.p-report__price__table tr.-pre_order td[colspan="5"] dl > div dd {
  text-align: left;
  margin-left: 8px;
}
.p-report__price__table tr.-pre_order td[colspan="5"] dl > div dd img {
  vertical-align: middle;
}
.p-report__price__table tr.-pre_order td[colspan="5"] dl > div dd span {
  color: #fff;
  font-size: 1.2rem;
  display: inline-block;
  background: #fba100;
  padding: 2px 5px 3px;
  margin-right: 10px;
}
@media only screen and (max-width: 600px) {
  .p-report__price__table tr.-pre_order td[colspan="5"] dl > div dd span {
    margin-bottom: 5px;
  }
}
.p-report__price__table tr.-disabled td {
  position: relative;
}
.p-report__price__table tr.-disabled td::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: #ccc;
  opacity: 0.6;
  width: 100%;
  height: 100%;
}
.p-report__price__table tr.-disabled td.-radio, .p-report__price__table tr.-disabled td.-check {
  pointer-events: none;
}
.p-report__price__table th {
  padding: 10px;
  color: #038531;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .p-report__price__table th {
    display: none;
  }
}
.p-report__price__table td {
  padding: 10px;
  vertical-align: middle;
}
.p-report__price__table td.-ico {
  text-align: center;
  padding: 10px 5px;
  width: 60px;
}
.p-report__price__table td.-ico img {
  vertical-align: middle;
}
@media only screen and (max-width: 600px) {
  .p-report__price__table td.-ico img {
    display: block;
    margin: 0 auto;
  }
}
.p-report__price__table td.-ico img + img {
  margin-left: 4px;
}
@media only screen and (max-width: 600px) {
  .p-report__price__table td.-ico img + img {
    margin-left: auto;
    margin-top: 5px;
  }
}
.p-report__price__table td.-ico .-book {
  width: 12px;
}
.p-report__price__table td.-ico .-pdf_data {
  width: 15px;
}
.p-report__price__table td.-ico .-network {
  width: 14px;
}
.p-report__price__table td.-ico .-cloud {
  width: 17px;
}
.p-report__price__table td.-ico .-download {
  width: 20px;
}
.p-report__price__table td.-ico .-file {
  width: 20px;
}
.p-report__price__table td.-link {
  position: relative;
  width: 210px;
}
.p-report__price__table td.-link a {
  display: inline-block;
  position: relative;
  bottom: 2px;
  left: 15px;
  width: 16px;
  height: 16px;
}
.p-report__price__table td.-link a img {
  vertical-align: middle;
  width: 100%;
  height: 100%;
}
.p-report__price__table td.-price {
  text-align: center;
}
.p-report__price__table td.-available {
  text-align: center;
}
.p-report__price__table td.-available span {
  z-index: 2;
  position: relative;
  line-height: 1;
}
.p-report__price__table td.-available .ok, .p-report__price__table td.-available .ng {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  font-family: montserrat, sans-serif;
  font-size: 1.6rem;
  font-weight: 900;
  text-align: center;
}
.p-report__price__table td.-available .ok span, .p-report__price__table td.-available .ng span {
  width: 17px;
  height: 17px;
  background: url("../../report/parts/img/nerwork_share-ico.png") no-repeat center/contain;
}
.p-report__price__table td.-available .ok {
  width: 40px;
  height: 40px;
  border: 5px solid #6fd1ff;
  border-radius: 50%;
}
.p-report__price__table td.-available .ng {
  width: 35px;
  height: 35px;
}
.p-report__price__table td.-available .ng::before, .p-report__price__table td.-available .ng::after {
  display: block;
  position: absolute;
  top: 0;
  left: 13px;
  width: 7px;
  height: 100%;
  background: #ffa8a8;
  content: "";
}
.p-report__price__table td.-available .ng::before {
  transform: rotate(45deg);
}
.p-report__price__table td.-available .ng::after {
  transform: rotate(-45deg);
}
.p-report__price__table td.-radio, .p-report__price__table td.-check {
  padding: 10px 20px;
  text-align: center;
  width: 55px;
}
.p-report__price__table td.-radio label, .p-report__price__table td.-check label {
  display: block;
  position: relative;
  cursor: pointer;
}
.p-report__price__table td.-radio label {
  width: 16px;
  height: 16px;
  margin-right: -6px;
}
.p-report__price__table td.-radio label::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  border: 1px solid #59ba7b;
  border-radius: 50%;
  background: #fff;
  content: "";
}
.p-report__price__table td.-radio label::after {
  display: none;
  position: absolute;
  top: 4px;
  left: 4px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #038531;
  content: "";
}
.p-report__price__table td.-radio label.is-checked::after {
  display: block;
}
.p-report__price__table td.-radio label input {
  display: none;
}
.p-report__price__table td.-check label {
  width: 15px;
  height: 15px;
  background: #fff;
  border: 1px solid #59ba7b;
  box-sizing: border-box;
}
.p-report__price__table td.-check label.is-checked {
  background: #038531;
}
.p-report__price__table td.-check label.is-checked::before {
  content: "";
  display: block;
  position: absolute;
  left: 2px;
  top: 3px;
  width: 10px;
  height: 5px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
}
.p-report__price__table td.-check label.is-disabled {
  background: #eff3f7;
  border-color: #ccc;
}
.p-report__price__table td.-check label input {
  display: none;
}
@media only screen and (max-width: 768px) {
  .p-report__price__table td.-ico {
    padding: 10px 0 10px 10px;
  }
  .p-report__price__table td.-price {
    display: block;
  }
  .p-report__price__table td.-price::before {
    display: block;
    color: #038531;
    text-align: center;
    content: "本体価格";
  }
  .p-report__price__table td.-price.-tax {
    padding: 0 10px;
  }
  .p-report__price__table td.-price.-tax::before {
    content: "税込価格";
  }
  .p-report__price__table td.-available {
    display: block;
  }
  .p-report__price__table td.-available::before {
    display: block;
    color: #038531;
    text-align: center;
    content: "ネットワーク共有";
  }
}
@media only screen and (max-width: 480px) {
  .p-report__price__table td.-available::before {
    margin-bottom: 2px;
    line-height: 1.2;
    white-space: pre;
    content: "ネットワーク\a共有";
  }
  .p-report__price__table td.-link a {
    position: absolute;
    bottom: 40px;
    width: 20px;
    height: 20px;
    left: 10px;
  }
}
.p-report__price__note > li {
  position: relative;
  padding-left: 18px;
  color: #555;
  font-size: 1.2rem;
}
.p-report__price__note > li + li {
  margin-top: 8px;
}
.p-report__price__note > li::before {
  position: absolute;
  top: 0;
  left: 0;
  color: #038531;
  content: "※";
}
.p-report__info {
  display: grid;
  justify-content: space-between;
  grid-template-columns: repeat(2, calc(50% - 10px));
  margin: 16px 0;
  row-gap: 16px;
}
@media only screen and (max-width: 768px) {
  .p-report__info {
    grid-template-columns: 1fr;
  }
}
.p-report__conv {
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
}
.p-report__conv > li {
  width: calc((100% - 20px) / 2);
}
.p-report__conv > li:nth-child(1) > .c-btn, .p-report__conv > li:nth-child(1) > .c-btn--line {
  background: #333;
}
.p-report__conv > li:nth-child(2) > .c-btn span, .p-report__conv > li:nth-child(2) > .c-btn--line span {
  padding-right: 40px;
}
.p-report__conv > li:nth-child(2) > .c-btn span i, .p-report__conv > li:nth-child(2) > .c-btn--line span i {
  width: 18px;
  height: 18px;
  background: url(/report/parts/img/cart-ico.png) center/contain no-repeat;
}
.p-report__conv > li:nth-child(2) > .c-btn span i::before, .p-report__conv > li:nth-child(2) > .c-btn--line span i::before, .p-report__conv > li:nth-child(2) > .c-btn span i::after, .p-report__conv > li:nth-child(2) > .c-btn--line span i::after {
  display: none;
}
.p-report__conv.multiple_btns > li {
  width: calc((100% - 40px) / 3);
}
.p-report__conv.multiple_btns > li > .c-btn, .p-report__conv.multiple_btns > li > .c-btn--line {
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  .p-report__conv {
    flex-wrap: wrap;
    margin-top: 40px;
  }
  .p-report__conv > li {
    width: 100% !important;
  }
  .p-report__conv > li + li {
    margin-top: 16px;
  }
  .p-report__conv > li > .c-btn, .p-report__conv > li > .c-btn--line {
    padding: 14px 0;
    font-size: 1.3rem;
  }
}
.p-report__cart__table th.-total, .p-report__cart__table td.-total {
  color: #0058aa;
  font-weight: bold;
  text-align: right;
}
@media only screen and (max-width: 600px) {
  .p-report__cart__table th, .p-report__cart__table td {
    padding: 10px;
    font-size: 1.2rem;
  }
}
.p-report__cart__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.p-report__cart__item > img {
  width: 80px;
}
@media only screen and (max-width: 600px) {
  .p-report__cart__item > img {
    width: 64px;
    margin: 0 auto;
  }
}
.p-report__cart__item > figcaption {
  width: calc(100% - 104px);
}
@media only screen and (max-width: 600px) {
  .p-report__cart__item > figcaption {
    width: 100%;
    margin-top: 8px;
  }
}
.p-report__cart__item__title {
  margin-bottom: 8px;
  font-weight: bold;
}
.p-report__cart__item__tag {
  color: #129fe8;
  font-size: 1.2rem;
}
@media only screen and (max-width: 600px) {
  .p-report__cart__item__tag {
    font-size: 1rem;
  }
}
.p-report__cart__price__cell {
  min-width: 82px;
}
.p-report__cart__price > p {
  display: block;
  font-weight: bold;
  text-align: center;
}
.p-report__cart__price > p.-taxEx {
  color: #777;
  font-weight: normal;
}
.p-report__cart__price > p span {
  display: inline-block;
}
.p-report__cart__total {
  font-weight: bold;
  text-align: center;
}
.p-report__cart__total > p {
  display: inline-block;
}
.p-report__cart__total > p.-taxIn {
  color: #0058aa;
}
.p-report__cart__total > p.-taxEx {
  margin-left: 8px;
  color: #777;
  font-weight: normal;
}
@media only screen and (max-width: 1024px) {
  .p-report__cart__total > p.-taxEx {
    margin-left: 0;
  }
}
.p-report__cart__total > p span {
  display: inline-block;
}
.p-report__cart__delete {
  width: 100%;
  padding: 6px;
  border-radius: 3px;
  background: #000;
  color: #fff;
  transition: background 0.3s ease-in-out;
}
.p-report__cart__delete:hover {
  background: #555;
  transition: background 0.3s ease-in-out;
}
.p-report__cart__agreement {
  margin-top: 64px;
  margin-bottom: 40px;
  padding: 32px 40px 40px;
  border: 1px solid #0058aa;
}
.p-report__cart__agreement__list dt {
  position: relative;
  margin-bottom: 8px;
  padding-left: 36px;
  color: #0058aa;
  font-size: 2rem;
  font-weight: bold;
}
.p-report__cart__agreement__list dt::before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 22px;
  height: 1px;
  margin: auto;
  background: #0058aa;
  content: "";
}
.p-report__cart__agreement__list dd {
  margin-bottom: 24px;
}
.p-report__cart__agreement__list dd > a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-report__cart__agreement__list dd > a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-report__cart__agreement__list + p > a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-report__cart__agreement__list + p > a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .p-report__cart__agreement {
    padding: 24px 32px 32px;
  }
  .p-report__cart__agreement__list dt {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 600px) {
  .p-report__cart__agreement {
    margin-bottom: 24px;
    padding: 20px 24px 24px;
  }
  .p-report__cart__agreement__list dt {
    padding-left: 20px;
    font-size: 1.6rem;
  }
  .p-report__cart__agreement__list dt::before {
    width: 12px;
  }
}
.p-report__list > li {
  border-bottom: 1px solid #c0d9ee;
}
.p-report__list > li .-ctrl {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.p-report__list > li .-ctrl .p-report__cat {
  width: calc(100% - 55px);
}
.p-report__list > li .c-title--m {
  font-size: 2.5rem;
}
@media only screen and (max-width: 768px) {
  .p-report__list > li .c-title--m {
    font-size: 2.2rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-report__list > li {
    padding-left: 0;
  }
  .p-report__list > li .c-title--m {
    left: 0;
  }
}
@media only screen and (max-width: 768px) {
  .p-report__list > li .p-report__overview {
    padding-bottom: 64px;
  }
}
.p-report__list > li + li {
  padding-top: 40px;
}
.p-report__list__fig {
  position: relative;
  text-align: center;
}
.p-report__list__fig > img {
  width: 100%;
  max-width: 120px;
  max-height: 170px;
  margin-bottom: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.16);
}
.p-report__list__fig > figcaption {
  position: absolute;
  right: 0;
  bottom: 40px;
  left: 0;
  color: #fff;
  font-size: 1.2rem;
}
.p-report__list__fig > figcaption span {
  display: block;
}
@media only screen and (max-width: 480px) {
  .p-report__list__fig {
    width: 80%;
    margin: 0 auto;
  }
}
.p-report__list__cap ul {
  margin-bottom: 10px;
}
.p-report__list__cap ul > li {
  width: 100%;
  height: 28px;
  border: 1px solid #136595;
  border-radius: 3px;
  background: #fff;
  color: #136595;
  font-size: 1.2rem;
  line-height: 28px;
  text-align: center;
}
.p-report__list__cap ul > li + li {
  margin-top: 4px;
}
.p-report__list__cap p {
  font-size: 1.4rem;
}
@media only screen and (max-width: 480px) {
  .p-report__list__cap ul > li {
    height: auto;
    padding: 4px;
    font-size: 1rem;
    line-height: 1.2;
  }
  .p-report__list__cap p {
    font-size: 1.2rem;
  }
}
.p-report__list__overview {
  position: absolute;
  left: -50px;
  width: 1064px;
  padding: 32px 32px 40px;
  border: 1px solid #6ac3f1;
  background: #fff;
  box-shadow: 0 6px 18px rgba(0, 90, 180, 0.2);
  opacity: 0;
  pointer-events: none;
}
@media only screen and (max-width: 1024px) {
  .p-report__list__overview {
    display: none;
  }
}
.is-iOS .p-report__list__overview {
  display: none;
}

.p-report__list__overview::before {
  z-index: 2;
  position: absolute;
  top: -24px;
  left: 80px;
  border: 12px solid transparent;
  border-bottom: 12px solid #FFF;
  content: "";
}
.p-report__list__overview::after {
  z-index: 1;
  position: absolute;
  top: -28px;
  left: 78px;
  border: 14px solid transparent;
  border-bottom: 14px solid #6ac3f1;
  content: "";
}
.p-report__list__overview__title {
  margin-bottom: 8px;
  color: #136595;
  font-size: 2.2rem;
}
.p-report__list__overview__title span {
  display: block;
  font-size: 1.4rem;
}
.p-report__list__overview__title span i {
  margin-left: 16px;
}
.p-report__list__overview > p {
  font-size: 1.4rem;
}
.p-report__list__overview > p > a {
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-report__list__overview > p > a:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out, text-decoration 0.3s ease-in-out;
}
.p-report__list__overview .c-btn, .p-report__list__overview .c-btn--line {
  width: 250px;
  margin: 16px 0 0 auto;
}
.p-report__list__overview > h4 {
  position: relative;
  margin: 20px 0 16px;
  font-size: 2rem;
}
.p-report__list__overview > h4::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  margin: auto;
  background: #ddd;
  content: "";
}
.p-report__list__overview > h4 span {
  display: inline-block;
  z-index: 0;
  position: relative;
  padding-right: 20px;
}
.p-report__list__overview > h4 span::before {
  z-index: -1;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  margin: auto;
  background: #fff;
  content: "";
}
.p-report__list__overview__recommend {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.p-report__list__overview__recommend > li {
  position: relative;
  width: 25%;
  margin-bottom: 20px;
}
.p-report__list__overview__recommend > li > a {
  display: block;
  width: calc(100% - 16px);
  height: 100%;
  margin: 0 auto;
  padding: 24px 20px;
  background: #f6f6f6;
}
.p-report__list__overview__recommend > li > a:hover {
  background: #6ac3f1;
  color: #fff;
}
.p-report__list--tile {
  display: flex;
  position: relative;
  flex-wrap: wrap;
}
.p-report__list--tile > li {
  position: relative;
  width: 25%;
}
@media only screen and (max-width: 768px) {
  .p-report__list--tile > li {
    width: 50%;
  }
}
.p-report__list--tile > li > a {
  display: block;
  height: 100%;
  margin: 0 auto;
}
.p-report__list--tile > li > a > div {
  width: calc(100% - 16px);
  height: 100%;
  margin: 0 auto;
  padding: 24px 20px;
  background: #fff;
  transition: background 0.3s ease-in-out, color 0.3s ease-in-out;
}
@media only screen and (max-width: 480px) {
  .p-report__list--tile > li > a > div {
    width: calc(100% - 8px);
    padding: 20px 12px;
  }
}
.p-report__list--tile > li:hover a > div {
  color: #fff;
  background: #6ac3f1;
}
.p-report__list--tile__fig {
  position: relative;
  text-align: center;
}
.p-report__list--tile__fig > img {
  width: 100%;
  max-width: 120px;
  max-height: 170px;
  margin-bottom: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.16);
}
.p-report__list--tile__cap ul {
  margin-bottom: 10px;
}
.p-report__condition .c-table {
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.p-report__condition .c-table th {
  background: #0058aa;
}
.p-report__condition .c-table td {
  vertical-align: top;
  background: #fff;
}
.p-report__condition .c-table th, .p-report__condition .c-table td {
  border-color: #ccc;
}
@media screen and (min-width: 769px) {
  .p-report__TOP .c-btn, .p-report__TOP .c-btn--line {
    margin: 0 0 0 auto;
    width: 300px;
  }
}
.p-report__TOP section ~ section {
  margin-top: 70px;
}
@media only screen and (max-width: 768px) {
  .p-report__TOP section ~ section {
    margin-top: 60px;
  }
}
.p-report__TOP__market_list {
  background: rgba(94, 152, 200, 0.07);
  padding: 50px 0 60px;
}
@media only screen and (max-width: 768px) {
  .p-report__TOP__market_list {
    padding: 40px 0 60px;
  }
}
.p-report__TOP__cate ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-flow: row wrap;
  margin-bottom: -20px;
}
.p-report__TOP__cate ul li {
  width: calc(25% - 10px);
  margin-bottom: 20px;
  aspect-ratio: 47/36;
  box-shadow: 0 0px 7px rgba(24, 125, 177, 0.4);
}
@media only screen and (max-width: 768px) {
  .p-report__TOP__cate ul li {
    width: calc(50% - 10px);
  }
}
.p-report__TOP__cate ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background: #fff;
  height: 100%;
  padding: 25px 0;
  transition: 0.3s;
}
.p-report__TOP__cate ul li a i {
  display: block;
  position: absolute;
  top: 15px;
  left: 10px;
  width: 40px;
  height: 40px;
}
@media only screen and (max-width: 480px) {
  .p-report__TOP__cate ul li a i {
    top: 10px;
    width: 27px;
    height: 27px;
  }
}
.p-report__TOP__cate ul li a h3 {
  font-size: 2rem;
  text-align: center;
  position: relative;
  z-index: 3;
}
[lang=ja] .p-report__TOP__cate ul li a h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-report__TOP__cate ul li a h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-report__TOP__cate ul li a h3 {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 1024px) {
  .p-report__TOP__cate ul li a h3 {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 480px) {
  .p-report__TOP__cate ul li a h3 {
    font-size: 1.5rem;
  }
}
.p-report__TOP__cate ul li a .-num {
  color: rgba(18, 159, 232, 0.5);
  font-family: montserrat, sans-serif;
  font-weight: 900;
  font-size: 3rem;
  position: absolute;
  right: 10px;
  top: 5px;
}
@media only screen and (max-width: 480px) {
  .p-report__TOP__cate ul li a .-num {
    font-size: 2.2rem;
  }
}
.p-report__TOP__cate ul li a span {
  font-size: 1.4rem;
  position: absolute;
  bottom: 5px;
  right: 10px;
  padding-right: 20px;
}
.p-report__TOP__cate ul li a span::before {
  content: "";
  display: block;
  position: absolute;
  right: 5px;
  top: 0;
  bottom: 0;
  transform: rotate(-45deg);
  width: 7px;
  height: 7px;
  margin: auto;
  border-right: 2px solid #0058aa;
  border-bottom: 2px solid #0058aa;
  box-sizing: border-box;
}
@media only screen and (max-width: 480px) {
  .p-report__TOP__cate ul li a span {
    font-size: 1.2rem;
  }
}
.p-report__TOP__cate ul li a:hover {
  color: #0058aa;
  background: #ecf7ff;
  box-shadow: 0 0px 24px rgba(24, 125, 177, 0.4);
}
.p-report__TOP__reserve .c-info {
  background: #f5fffa;
  border: 1px solid #c0d9ee;
}
.p-report__TOP__reserve .c-info__list > li a {
  display: flex;
  align-items: center;
}
.p-report__TOP__reserve .c-info__list > li a figure {
  width: 100px;
}
.p-report__TOP__reserve .c-info__list > li a dl {
  width: calc(100% - 140px);
  margin-left: 40px;
}
@media only screen and (max-width: 768px) {
  .p-report__TOP__reserve .c-info__list > li a figure {
    width: 75px;
  }
  .p-report__TOP__reserve .c-info__list > li a dl {
    width: calc(100% - 95px);
    margin-left: 20px;
  }
}
.p-report__MARKET__mv {
  display: flex;
  align-items: center;
  position: relative;
  background: url(/common/img/mv.jpg) no-repeat center/cover;
  min-height: 280px;
  padding: 60px 0;
  margin-bottom: 50px;
}
@media only screen and (max-width: 768px) {
  .p-report__MARKET__mv {
    min-height: unset;
    padding: 50px 0 40px;
  }
}
.p-report__MARKET__mv::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(3, 68, 129, 0.5);
  width: 100%;
  height: 100%;
}
.p-report__MARKET__mv .l-inner, .p-report__MARKET__mv .l-inner--wide {
  position: relative;
  z-index: 3;
}
.p-report__MARKET__mv .-catch {
  color: #fff;
  width: 70%;
}
.p-report__MARKET__mv .-catch h2 {
  font-size: 3.2rem;
}
[lang=ja] .p-report__MARKET__mv .-catch h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-report__MARKET__mv .-catch h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-report__MARKET__mv .-catch h2 {
  font-family: "Roboto", sans-serif;
}

.p-report__MARKET__mv .-catch h2 + p {
  margin-top: 25px;
}
@media only screen and (max-width: 768px) {
  .p-report__MARKET__mv .-catch {
    width: 80%;
  }
  .p-report__MARKET__mv .-catch h2 {
    font-size: 2.4rem;
  }
  .p-report__MARKET__mv .-catch h2 + p {
    margin-top: 20px;
  }
}
.p-report__MARKET .p-report__contents * {
  font-family: "Noto Sans JP", sans-serif !important;
  font-weight: 500;
}
.p-report__MARKET .p-report__contents * table {
  width: 100% !important;
}
.p-report__MARKET__profile {
  margin-bottom: 24px;
}
.p-report__MARKET__profile figure {
  position: relative;
  aspect-ratio: 1/1;
  background: #0058aa;
  width: 70%;
  margin: 0 auto 15px;
  background: #c0d9ee;
}
@media only screen and (max-width: 768px) {
  .p-report__MARKET__profile figure {
    width: 170px;
  }
}
.p-report__MARKET__profile figure img {
  position: absolute;
  width: 100%;
  height: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.p-report__MARKET__profile dl dt {
  color: #129fe8;
  font-size: 1.4rem;
  text-align: center;
  border-bottom: 1px solid #c0d9ee;
  padding-bottom: 3px;
  margin-bottom: 3px;
}
.p-report__MARKET__profile dl dd {
  font-size: 1.3rem;
}
.p-report__MARKET__list .c-tile .-text {
  font-size: 1.4rem;
}
.p-report__REGIST__mail {
  max-width: 500px;
  margin: 0 auto 30px;
}
.p-report__REGIST__step {
  margin-top: 40px;
}
.p-report__REGIST__step:not(:first-of-type) {
  display: none;
}
.p-report__REGIST__step .c-title--sec {
  text-align: center;
  margin-bottom: 35px;
}
.p-report__REGIST__step__body {
  margin-top: 30px;
}
.p-report__REGIST__step__body .attention {
  color: #f99f00;
  font-weight: bold;
  text-align: center;
}
.p-report__REGIST__step__body .attention span {
  display: inline-block;
  background: url(/report/parts/img/icon-caution.png) no-repeat left center/20px 20px;
  padding-left: 30px;
}
@media only screen and (max-width: 600px) {
  .p-report__REGIST__step__body .attention span {
    background: url(/report/parts/img/icon-caution.png) no-repeat center top/23px 23px;
    padding-top: 27px;
    padding-left: 0;
  }
}
.p-report__REGIST__step__body .notes {
  padding: 25px;
  background: #eff5f8;
}
@media only screen and (max-width: 768px) {
  .p-report__REGIST__step__body .notes {
    padding: 15px;
  }
}
.p-report__REGIST__step__body .notes_title {
  font-size: 2rem;
  margin-bottom: 15px;
}
@media only screen and (max-width: 768px) {
  .p-report__REGIST__step__body .notes_title {
    font-size: 1.8rem;
  }
}
.p-report__REGIST__step__body .notes ul li {
  position: relative;
  padding-left: 17px;
}
.p-report__REGIST__step__body .notes ul li::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 9px;
  background: #0058aa;
  width: 5px;
  height: 5px;
  border-radius: 50%;
}
.p-report__REGIST__step__body .notes ul li + li {
  margin-top: 10px;
}
.p-report__REGIST__step__body .c-title--m {
  font-size: 2.6rem;
}
.p-report__REGIST__step__body .scroll_box {
  height: 300px;
  margin-bottom: 30px;
  padding: 25px;
  overflow-y: scroll;
  background: #eff5f8;
}
.p-report__REGIST__step__body .scroll_box p ~ p {
  margin-top: 20px;
}
@media only screen and (max-width: 600px) {
  .p-report__REGIST__step__body .scroll_box {
    height: 190px;
    padding: 15px;
  }
}
.p-report__REGIST__step__body .l-article .c-featurebox.-mypage .-feature01 dt {
  background: url("/report/parts/img/mypage_feature01.png") left center/30px auto no-repeat;
}
.p-report__REGIST__step__body .l-article .c-featurebox.-mypage .-feature02 dt {
  background: url("/report/parts/img/mypage_feature02.png") left center/30px auto no-repeat;
}
.p-report__REGIST__step__body .l-article .c-featurebox.-mypage .-feature03 dt {
  background: url("/report/parts/img/mypage_feature03.png") left center/auto 30px no-repeat;
}
.p-report__REGIST__step__body .l-article .c-featurebox.-mypage .-feature04 dt {
  background: url("/report/parts/img/mypage_feature04.png") left center/35px auto no-repeat;
}
@media only screen and (max-width: 600px) {
  .p-report__REGIST__step__body .l-article .c-featurebox.-mypage .-feature03 dt {
    background: url("/report/parts/img/mypage_feature03_sp.png") left center/auto 30px no-repeat;
  }
  .p-report__REGIST__step__body .l-article .c-featurebox.-mypage .-feature04 dt {
    background: url("/report/parts/img/mypage_feature04_sp.png") left center/35px auto no-repeat;
  }
}
.p-report__REGIST__step__body .l-article > p strong {
  font-weight: bold;
  color: #129fe8;
}
.p-report__REGIST__step__footer {
  display: flex;
  justify-content: center;
  margin-top: 50px;
}
.p-report__REGIST__step__footer .c-btn, .p-report__REGIST__step__footer .c-btn--line {
  width: 250px;
  margin: 0;
}
.p-report__REGIST__step__footer .c-btn + .c-btn, .p-report__REGIST__step__footer .c-btn--line + .c-btn, .p-report__REGIST__step__footer .c-btn + .c-btn--line, .p-report__REGIST__step__footer .c-btn--line + .c-btn--line {
  margin-left: 10px;
}
.p-report__REGIST__step__footer .c-btn.cancel, .p-report__REGIST__step__footer .cancel.c-btn--line, .p-report__REGIST__step__footer .c-btn.return, .p-report__REGIST__step__footer .return.c-btn--line {
  background: #999;
}
.p-report__REGIST__step__footer .c-btn.cancel::before, .p-report__REGIST__step__footer .cancel.c-btn--line::before, .p-report__REGIST__step__footer .c-btn.return::before, .p-report__REGIST__step__footer .return.c-btn--line::before {
  background: #777;
}
.p-report__REGIST__step__footer .c-btn.-prev, .p-report__REGIST__step__footer .-prev.c-btn--line {
  background: #333;
}
.p-report__REGIST__step__footer .c-btn.-prev span, .p-report__REGIST__step__footer .-prev.c-btn--line span {
  padding-left: 32px;
}
.p-report__REGIST__step__footer .c-btn.-prev span i, .p-report__REGIST__step__footer .-prev.c-btn--line span i {
  right: auto;
  left: 0;
  transition: left 0.3s ease-in-out;
}
.p-report__REGIST__step__footer .c-btn.-prev span i::after, .p-report__REGIST__step__footer .-prev.c-btn--line span i::after {
  transform: rotate(225deg);
  left: 0;
  right: auto;
}
.p-report__REGIST__step__footer .c-btn.-prev::before, .p-report__REGIST__step__footer .-prev.c-btn--line::before {
  background: #129fe8;
}
.p-report__REGIST__step__footer .c-btn.-prev:hover span i, .p-report__REGIST__step__footer .-prev.c-btn--line:hover span i {
  left: -4px;
}
@media only screen and (max-width: 600px) {
  .p-report__REGIST__step__footer {
    display: block;
  }
  .p-report__REGIST__step__footer .c-btn, .p-report__REGIST__step__footer .c-btn--line {
    width: 100%;
  }
  .p-report__REGIST__step__footer .c-btn + .c-btn, .p-report__REGIST__step__footer .c-btn--line + .c-btn, .p-report__REGIST__step__footer .c-btn + .c-btn--line, .p-report__REGIST__step__footer .c-btn--line + .c-btn--line {
    margin-top: 10px;
    margin-left: 0;
  }
}

.p-sample .l-mv {
  background-image: url(/sample/parts/img/mv.jpg);
}

.p-service .l-mv {
  background-image: url(/common/img/mv.jpg);
}
.p-service .flow-pc {
  display: inherit;
}
.p-service .flow-sp {
  display: none;
}
@media only screen and (max-width: 480px) {
  .p-service .flow-pc {
    display: none;
  }
  .p-service .flow-sp {
    display: inherit;
  }
}
.p-service__index--sec02 {
  position: relative;
  margin-top: 140px;
  margin-bottom: 72px;
  padding-bottom: 96px;
  background: rgba(94, 152, 200, 0.07);
}
@media only screen and (max-width: 600px) {
  .p-service__index--sec02 {
    margin-top: 100px;
    margin-bottom: 56px;
    padding-bottom: 64px;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__index #report {
    margin-top: 64px;
  }
}
.p-service__lead {
  margin-bottom: 48px;
  line-height: 1.875;
}
@media only screen and (max-width: 480px) {
  .p-service__lead {
    line-height: 1.75;
  }
}
.p-service__aboutFR {
  position: relative;
  padding-bottom: 40px;
}
.p-service__aboutFR__img {
  position: relative;
  left: -32px;
  width: 560px;
}
@media only screen and (max-width: 1024px) {
  .p-service__aboutFR__img {
    width: 64%;
    position: absolute;
    top: 0;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__aboutFR__img {
    position: relative;
    left: auto;
    width: 100%;
  }
}
.p-service__aboutFR__txt {
  position: absolute;
  right: -32px;
  bottom: 0;
  width: 560px;
  padding: 40px 48px;
  background: #f8fbfe;
  box-shadow: 0 6px 18px rgba(24, 125, 177, 0.12);
}
@media only screen and (max-width: 1024px) {
  .p-service__aboutFR__txt {
    width: 56%;
    margin: 0 0 0 auto;
    padding: 24px 32px;
    position: relative;
    top: 20px;
    bottom: auto;
  }
}
@media only screen and (max-width: 768px) {
  .p-service__aboutFR__txt {
    width: 68%;
    padding: 20px 24px;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__aboutFR__txt {
    top: 0;
    right: auto;
    width: 92%;
    margin: -40px auto 0;
    padding: 32px 20px 20px;
  }
}
.p-service__aboutFR__txt h3 {
  position: relative;
  margin-bottom: 16px;
  color: #129fe8;
  font-size: 2.2rem;
}
.p-service__aboutFR__txt h3::before, .p-service__aboutFR__txt h3::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  background: #129fe8;
  margin: auto;
}
.p-service__aboutFR__txt h3::before {
  left: -28px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
}
.p-service__aboutFR__txt h3::after {
  left: -78px;
  width: 50px;
  height: 1px;
  background: #129fe8;
}
@media only screen and (max-width: 768px) {
  .p-service__aboutFR__txt h3 {
    margin-bottom: 12px;
    font-size: 1.8rem;
  }
  .p-service__aboutFR__txt h3::before {
    left: -16px;
  }
  .p-service__aboutFR__txt h3::after {
    left: -60px;
    width: 48px;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__aboutFR__txt h3 {
    text-align: center;
  }
  .p-service__aboutFR__txt h3::before, .p-service__aboutFR__txt h3::after {
    right: 0;
    bottom: auto;
    left: 0;
  }
  .p-service__aboutFR__txt h3::before {
    top: -12px;
  }
  .p-service__aboutFR__txt h3::after {
    top: -44px;
    width: 1px;
    height: 36px;
  }
}
.p-service__aboutFR__txt p {
  margin-bottom: 32px;
  line-height: 1.875;
}
@media only screen and (max-width: 768px) {
  .p-service__aboutFR__txt p {
    margin-bottom: 24px;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__aboutFR__txt p {
    line-height: 1.75;
  }
}
.p-service__aboutFR__txt .c-btn--line {
  max-width: 250px;
  margin: 0 0 0 auto;
  border-color: #0058aa;
}
.p-service__aboutFR__txt .c-btn--line::before {
  background: #0058aa;
}
.p-service__aboutFR__txt .c-btn--line span {
  color: #0058aa;
}
.p-service__aboutFR__txt .c-btn--line span i {
  display: block;
  position: relative;
  position: absolute;
  width: 17px;
  height: 13px;
}
.p-service__aboutFR__txt .c-btn--line span i::before, .p-service__aboutFR__txt .c-btn--line span i::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
.p-service__aboutFR__txt .c-btn--line span i::before {
  width: 100%;
  height: 1px;
  background: #0058aa;
}
.p-service__aboutFR__txt .c-btn--line span i::after {
  width: 9px;
  height: 9px;
  transform: rotate(45deg);
  border-top: 1px solid #0058aa;
  border-right: 1px solid #0058aa;
}
.p-service__aboutFR__txt .c-btn--line:hover span {
  color: #fff;
}
.p-service__aboutFR__txt .c-btn--line:hover span i {
  display: block;
  position: relative;
  position: absolute;
  width: 17px;
  height: 13px;
}
.p-service__aboutFR__txt .c-btn--line:hover span i::before, .p-service__aboutFR__txt .c-btn--line:hover span i::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}
.p-service__aboutFR__txt .c-btn--line:hover span i::before {
  width: 100%;
  height: 1px;
  margin: auto;
  background: #fff;
}
.p-service__aboutFR__txt .c-btn--line:hover span i::after {
  width: 9px;
  height: 9px;
  margin: auto;
  transform: rotate(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
@media only screen and (max-width: 600px) {
  .p-service__aboutFR__txt .c-btn--line {
    max-width: none;
  }
}
.p-service__menu {
  position: relative;
}
.p-service__menu__list {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  top: -60px;
  max-width: 960px;
  margin: 0 auto 20px;
  justify-content: space-between;
}
@media only screen and (max-width: 600px) {
  .p-service__menu__list {
    margin-bottom: 0;
  }
}
.p-service__menu__list > li {
  width: 210px;
}
@media only screen and (max-width: 1024px) {
  .p-service__menu__list > li {
    width: 21vw;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__menu__list > li {
    width: 42vw;
    margin-bottom: 4vw;
  }
}
.p-service__menu__list > li a {
  display: block;
}
.p-service__menu__list > li a figure {
  z-index: 0;
  position: relative;
  width: 100%;
  height: 120px;
  background: #fff;
  text-align: center;
}
.p-service__menu__list > li a figure::before {
  display: block;
  z-index: -1;
  position: absolute;
  right: -150%;
  width: 200%;
  height: 100%;
  transform: skewX(-60deg);
  background: #ecf7ff;
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-service__menu__list > li a figure img {
  width: 32px;
  margin-top: 30px;
}
.p-service__menu__list > li a figure figcaption {
  margin-top: 8px;
  color: #0058aa;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .p-service__menu__list > li a figure {
    height: 12vw;
  }
  .p-service__menu__list > li a figure img {
    width: 4vw;
    margin-top: 2.8vw;
  }
  .p-service__menu__list > li a figure figcaption {
    margin-top: 0.8vw;
    font-size: 1.6vw;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__menu__list > li a figure {
    height: 24vw;
  }
  .p-service__menu__list > li a figure img {
    width: 8vw;
    margin-top: 6vw;
  }
  .p-service__menu__list > li a figure figcaption {
    margin-top: 1.2vw;
    font-size: 3.4vw;
  }
}
.p-service__menu__list > li a:hover figure::before {
  right: -50%;
  transition: right 0.3s ease-in-out;
}
.p-service__menu__list--report {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  top: -60px;
  max-width: 960px;
  margin: 0 auto 20px;
  margin-top: -10px;
}
@media only screen and (max-width: 600px) {
  .p-service__menu__list--report {
    justify-content: space-between;
    margin-top: 0;
  }
}
.p-service__menu__list--report > li {
  width: calc((100% - 60px) / 3);
  margin: 10px;
}
@media only screen and (max-width: 600px) {
  .p-service__menu__list--report > li {
    width: 42vw;
    margin: 0 0 4vw;
  }
}
.p-service__menu__list--report > li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 175px;
  background: #fff;
  text-align: center;
}
.p-service__menu__list--report > li a::before {
  display: block;
  z-index: 0;
  position: absolute;
  right: -150%;
  bottom: 0;
  width: 200%;
  height: 100%;
  transform: skewX(-60deg);
  background: #ecf7ff;
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-service__menu__list--report > li a p {
  position: relative;
  line-height: 1.4;
}
.p-service__menu__list--report > li a:hover::before {
  right: -50%;
  transition: right 0.3s ease-in-out;
}
@media only screen and (max-width: 1024px) {
  .p-service__menu__list--report {
    top: -6vw;
    margin-bottom: -6vw;
  }
  .p-service__menu__list--report > li a {
    height: 15.5vw;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__menu__list--report > li a {
    height: 24vw;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__menu__list--report > li a {
    font-size: 1.2rem;
  }
}
.p-service__menu__list > li a, .p-service__menu__list--report > li a {
  position: relative;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(24, 125, 177, 0.2);
  transition: box-shadow 0.3s ease-in-out;
}
.p-service__menu__list > li a span, .p-service__menu__list--report > li a span {
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  background: #0058aa;
}
.p-service__menu__list > li a span i, .p-service__menu__list--report > li a span i {
  display: block;
  position: absolute;
  top: 6px;
  right: 0;
  left: 0;
  width: 7px;
  height: 7px;
  margin: auto;
  transform: rotate(45deg);
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.p-service__menu__list > li a:hover, .p-service__menu__list--report > li a:hover {
  box-shadow: 0 8px 24px rgba(24, 125, 177, 0.4);
  transition: box-shadow 0.3s ease-in-out;
}
.p-service__research {
  margin-bottom: 40px;
  padding: 24px 40px 32px;
  background: #fff;
}
.p-service__research h3 {
  margin-bottom: 8px;
  color: #129fe8;
  font-size: 2.2rem;
  text-align: center;
}
.p-service__research h3 span {
  font-size: 1.6rem;
}
.p-service__research p {
  line-height: 1.875;
}
@media only screen and (max-width: 768px) {
  .p-service__research {
    margin-top: -40px;
    padding: 20px 24px 24px;
  }
  .p-service__research h3 {
    font-size: 1.8rem;
  }
  .p-service__research h3 span {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__research h3 span {
    display: block;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__research p {
    line-height: 1.75;
  }
}
.p-service__box {
  margin-top: 48px;
}
@media only screen and (max-width: 600px) {
  .p-service__box {
    margin-top: 40px;
  }
}
.p-service__box__title, .p-service__box__title--pub, .p-service__box__title--data, .p-service__box__title--report, .p-service__box__title--research {
  margin-bottom: 24px;
  padding-left: 44px;
  color: #0058aa;
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.08em;
}
.p-service__box__title--research {
  background: url(/common/img/service_ico_01.png) center left/32px no-repeat;
}
.p-service__box__title--report {
  background: url(/common/img/service_ico_02.png) center left/32px no-repeat;
}
.p-service__box__title--data {
  background: url(/common/img/service_ico_03.png) center left/32px no-repeat;
}
.p-service__box__title--pub {
  background: url(/common/img/service_ico_04.png) center left/32px no-repeat;
}
@media only screen and (max-width: 768px) {
  .p-service__box__title, .p-service__box__title--pub, .p-service__box__title--data, .p-service__box__title--report, .p-service__box__title--research {
    padding-left: 40px;
    background-size: 28px;
    font-size: 2.2rem;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__box__title, .p-service__box__title--pub, .p-service__box__title--data, .p-service__box__title--report, .p-service__box__title--research {
    margin-bottom: 16px;
    padding-left: 36px;
    background-size: 24px;
    font-size: 2rem;
  }
}
.p-service__box .c-btn, .p-service__box .c-btn--line {
  max-width: 250px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 600px) {
  .p-service__box .c-btn, .p-service__box .c-btn--line {
    max-width: none;
  }
}
.p-service__business__item > a {
  display: block;
}
.p-service__business__item > a figure {
  z-index: 0;
  position: relative;
  margin-bottom: 12px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(6, 56, 114, 0.2);
  transition: box-shadow 0.3s ease-in-out;
}
.p-service__business__item > a figure::before {
  display: block;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 104%;
  width: 200%;
  height: 100%;
  transform: skewX(-45deg);
  background: rgba(0, 54, 120, 0.6);
  content: "";
  transition: left 0.3s ease-in-out;
}
@media only screen and (max-width: 600px) {
  .p-service__business__item > a figure::before {
    left: 100%;
  }
}
.p-service__business__item > a figure.-research {
  background: #2b64b6;
}
.p-service__business__item > a figure img {
  width: 100%;
  transform: scale(1);
  opacity: 0.7;
  transition: transform 0.3s ease-in-out;
}
.p-service__business__item > a figure figcaption {
  z-index: 2;
  position: absolute;
  right: 20px;
  bottom: 16px;
  padding-right: 32px;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-align: right;
}
.p-service__business__item > a figure figcaption i {
  display: block;
  position: relative;
  position: absolute;
  right: 0;
  bottom: 2px;
  width: 12px;
  height: 19px;
  text-align: left;
  transition: right 0.3s ease-in-out;
}
.p-service__business__item > a figure figcaption i::before, .p-service__business__item > a figure figcaption i::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.p-service__business__item > a figure figcaption i::before {
  width: 100%;
  height: 1px;
  background: #fff;
}
.p-service__business__item > a figure figcaption i::after {
  right: 0;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.p-service__business__item > a figure.-report {
  background: #1f8ddf;
}
.p-service__business__item > a figure.-report::before {
  background: rgba(8, 160, 255, 0.5);
}
.p-service__business__item > a p {
  font-size: 1.4rem;
  line-height: 1.6;
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .p-service__business__item > a p {
    font-size: 1.2rem;
    line-height: 1.5;
  }
}
.p-service__business__item > a:hover figure {
  box-shadow: 0 8px 24px rgba(6, 56, 114, 0.4);
  transition: box-shadow 0.3s ease-in-out;
}
.p-service__business__item > a:hover figure::before {
  left: -40%;
  transition: left 0.3s ease-in-out;
}
.p-service__business__item > a:hover figure img {
  transform: scale(1.08);
  transition: transform 0.3s ease-in-out;
}
.p-service__business__item > a:hover figure figcaption i {
  right: -4px;
  transition: right 0.3s ease-in-out;
}
.p-service__business__item > a:hover p {
  color: #0058aa;
  transition: right 0.3s ease-in-out;
}
.p-service__business__item > a:hover p.-report {
  color: #129fe8;
}
.p-service__report {
  position: relative;
  margin-top: 40px;
  padding: 32px 40px 40px;
  background: url(/service/parts/img/service_report_bg.gif);
  box-shadow: 0 6px 18px rgba(11, 103, 169, 0.4);
}
@media only screen and (max-width: 768px) {
  .p-service__report {
    padding: 24px 24px 32px;
  }
}
.p-service__report .c-title--m {
  margin-bottom: 32px;
  border-left-color: #129fe8;
  color: #129fe8;
  font-size: 2.4rem;
}
.p-service__report .c-title--m + p {
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .p-service__report .c-title--m {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__report .c-title--m {
    margin-bottom: 16px;
    border: none;
    padding: 0;
    font-weight: bold;
    text-align: center;
  }
}
.p-service__report__list {
  margin-bottom: 16px;
}
.p-service__report__list li > a {
  display: block;
}
.p-service__report__list li > a figure {
  display: flex;
  justify-content: space-between;
}
.p-service__report__list li > a figure figcaption {
  width: calc(100% - 150px);
}
.p-service__report__list li > a figure figcaption ul {
  display: flex;
  margin-bottom: 8px;
}
.p-service__report__list li > a figure figcaption ul li {
  padding: 3px 16px;
  border: 1px solid #136595;
  border-radius: 3px;
  background: #fff;
  color: #136595;
  font-size: 1.2rem;
  transition: border-color 0.3s ease-in-out, background 0.3s ease-in-out, color 0.3s ease-in-out;
}
.p-service__report__list li > a figure figcaption ul li + li {
  margin-left: 6px;
}
.p-service__report__list li > a figure figcaption h4 {
  margin-bottom: 12px;
  color: #136595;
  font-weight: bold;
  transition: color 0.3s ease-in-out;
}
.p-service__report__list li > a figure figcaption p {
  font-size: 1.4rem;
  line-height: 1.8;
  transition: color 0.3s ease-in-out;
}
.p-service__report__list li > a figure figcaption p > span {
  display: inline-block;
  width: auto;
  color: #0058aa;
  text-decoration: underline;
  transition: color 0.3s ease-in-out;
}
.p-service__report__list li > a figure figcaption p > span:hover {
  color: #129fe8;
  text-decoration: none;
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .p-service__report__list li > a figure {
    align-items: center;
  }
  .p-service__report__list li > a figure img {
    width: 100px;
  }
  .p-service__report__list li > a figure figcaption {
    width: calc(100% - 120px);
  }
  .p-service__report__list li > a figure figcaption ul li {
    padding: 2px 8px;
    font-size: 1rem;
  }
  .p-service__report__list li > a figure figcaption ul li + li {
    margin-left: 4px;
  }
  .p-service__report__list li > a figure figcaption p {
    font-size: 1.2rem;
    line-height: 1.6;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__report__list li > a figure {
    flex-wrap: wrap;
  }
  .p-service__report__list li > a figure span {
    display: block;
    width: 100%;
    text-align: center;
  }
  .p-service__report__list li > a figure span img {
    margin: 0 auto 16px;
  }
  .p-service__report__list li > a figure figcaption {
    width: 100%;
  }
  .p-service__report__list li > a figure figcaption ul {
    justify-content: center;
  }
}
.p-service__report__list li > a:hover figure figcaption ul li {
  border-color: #129fe8;
  background: #129fe8;
  color: #fff;
  transition: border-color 0.3s ease-in-out, background 0.3s ease-in-out, color 0.3s ease-in-out;
}
.p-service__report__list li > a:hover figure figcaption h4, .p-service__report__list li > a:hover figure figcaption p {
  color: #129fe8;
  transition: color 0.3s ease-in-out;
}
.p-service__report__list + .c-btn--line {
  max-width: 250px;
  margin: 0 0 0 auto;
  border-color: #0058aa;
}
.p-service__report__list + .c-btn--line::before {
  background: #0058aa;
}
.p-service__report__list + .c-btn--line span {
  color: #0058aa;
}
.p-service__report__list + .c-btn--line span i::before {
  background: #0058aa;
}
.p-service__report__list + .c-btn--line span i::after {
  border-color: #0058aa;
}
.p-service__report__list + .c-btn--line:hover span {
  color: #fff;
}
.p-service__report__list + .c-btn--line:hover span i::before {
  background: #fff;
}
.p-service__report__list + .c-btn--line:hover span i::after {
  border-color: #fff;
}
.p-service__report__list + .c-btn--line.-more i {
  background-image: url(/common/img/list_ico_blue.gif);
}
.p-service__report__list + .c-btn--line.-more:hover span i {
  background-image: url(/common/img/list_ico.gif);
}
@media only screen and (max-width: 600px) {
  .p-service__report__list + .c-btn--line {
    width: 100%;
    max-width: none;
  }
}
.p-service__report .custom_paging {
  position: absolute;
  top: -65px;
  right: 40px;
  width: 80px;
  height: 40px;
  background: #079fff;
}
.p-service__report .custom_paging > li {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  color: #fff;
}
.p-service__report .custom_paging > li.slick-active {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 480px) {
  .p-service__report .custom_paging {
    top: auto;
    right: auto;
    bottom: -60px;
    left: 50%;
    margin-left: -40px;
  }
}
.p-service__report .slick-next {
  display: block;
  position: absolute;
  top: -45px;
  right: 0;
  width: 40px;
  height: 40px;
  background: #0a8adb;
}
.p-service__report .slick-next::before {
  position: absolute;
  top: 0;
  right: 18px;
  bottom: 0;
  width: 9px;
  height: 9px;
  margin: auto;
  transform: rotate(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  content: "";
}
@media only screen and (max-width: 480px) {
  .p-service__report .slick-next {
    top: auto;
    right: auto;
    left: 50%;
    bottom: -80px;
    margin-left: 40px;
  }
}
.p-service__report .slick-prev {
  display: block;
  position: absolute;
  top: -45px;
  right: 120px;
  left: auto;
  width: 40px;
  height: 40px;
  background: #0a8adb;
}
.p-service__report .slick-prev::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 18px;
  width: 9px;
  height: 9px;
  margin: auto;
  transform: rotate(-45deg);
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  content: "";
}
@media only screen and (max-width: 480px) {
  .p-service__report .slick-prev {
    top: auto;
    left: 50%;
    right: auto;
    bottom: -80px;
    margin-left: -80px;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__report .slick-dotted.slick-slider {
    margin-bottom: 92px;
  }
}
.p-service__report__box {
  margin-top: 32px;
}
.p-service__report__box .c-flexbox__item {
  margin-bottom: 0;
}
.p-service__report__box .c-flexbox__item:last-of-type {
  width: 460px;
}
.p-service__report__box .c-flexbox__item p {
  margin-bottom: 16px;
  line-height: 1.7;
}
@media only screen and (max-width: 1024px) {
  .p-service__report__box .c-flexbox__item {
    width: 50%;
  }
  .p-service__report__box .c-flexbox__item:last-of-type {
    width: 46%;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__report__box .c-flexbox__item {
    width: 100%;
  }
  .p-service__report__box .c-flexbox__item:last-of-type {
    width: 100%;
  }
}
.p-service__data {
  margin-top: 32px;
}
@media only screen and (max-width: 768px) {
  .p-service__data {
    margin-top: 24px;
  }
}
.p-service__data__item {
  width: calc((100% - 60px) / 4);
}
@media only screen and (max-width: 768px) {
  .p-service__data__item {
    width: calc((100% - 24px) / 2);
    margin-bottom: 24px;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__data__item {
    width: 100%;
  }
}
.p-service__data__item > a {
  display: block;
  height: 100%;
  background: #d8edfd;
  box-shadow: 0 6px 18px rgba(5, 123, 197, 0.16);
  transition: background 0.3s ease-in-out, color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}
.p-service__data__item > a figure {
  position: relative;
  background: #fff;
  text-align: center;
}
.p-service__data__item > a figure > span {
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 32px;
  height: 32px;
  background: #0058aa;
}
.p-service__data__item > a figure > span::before, .p-service__data__item > a figure > span::after {
  display: block;
  position: absolute;
  width: 10px;
  height: 8px;
  content: "";
}
.p-service__data__item > a figure > span::before {
  top: 14px;
  left: 10px;
  border: 1px solid #fff;
}
.p-service__data__item > a figure > span::after {
  top: 11px;
  left: 13px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
@media only screen and (max-width: 480px) {
  .p-service__data__item > a figure img {
    width: 80%;
  }
}
.p-service__data__item > a p {
  padding: 16px;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media only screen and (max-width: 480px) {
  .p-service__data__item > a p {
    font-size: 1.2rem;
  }
}
.p-service__data__item > a:hover {
  background: #0058aa;
  box-shadow: 0 8px 24px rgba(5, 123, 197, 0.32);
  color: #fff;
  transition: background 0.3s ease-in-out, color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}
.p-service__pub {
  margin-top: 32px;
}
@media only screen and (max-width: 768px) {
  .p-service__pub {
    margin-top: 24px;
  }
}
.p-service__pub img {
  box-shadow: 0 6px 18px rgba(6, 56, 114, 0.12);
  transition: box-shadow 0.3s ease-in-out;
}
.p-service__pub a:hover img {
  box-shadow: 0 8px 30px rgba(6, 56, 114, 0.4);
  transition: box-shadow 0.3s ease-in-out;
}
.p-service__pub__item > a {
  display: block;
}
.p-service__pub__item > a figure img {
  margin-bottom: 10px;
}
.p-service__pub__item > a figure figcaption {
  font-size: 1.2rem;
  line-height: 1.3;
}
.p-service__pub__item > a figure figcaption h4 {
  margin-bottom: 4px;
  color: #0058aa;
  font-size: 1.4rem;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .p-service__pub__item > a figure figcaption {
    font-size: 1.1rem;
  }
  .p-service__pub__item > a figure figcaption h4 {
    font-size: 1.3rem;
  }
}
.p-service__pub.banners {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
.p-service__pub.banners li {
  width: 480px;
}
.p-service__pub.banners li:first-child {
  margin-right: 2%;
}
.p-service__pub.banners li:last-child {
  margin-left: 2%;
}
.p-service__pub.banners li img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 480px) {
  .p-service__pub.banners {
    display: block;
  }
  .p-service__pub.banners li {
    width: 100%;
  }
  .p-service__pub.banners li:first-child {
    margin-right: 0;
  }
  .p-service__pub.banners li:last-child {
    margin-top: 16px;
    margin-left: 0;
  }
}
.p-service__research__section {
  padding: 64px 0 96px;
}
.p-service__research__section:last-of-type {
  margin-bottom: 0;
}
.p-service__research__section.-sec01 {
  padding-top: 0;
}
.p-service__research__section.-sec02 {
  background: rgba(94, 152, 200, 0.07);
}
.p-service__research__section.-sec03 {
  padding-bottom: 0;
}
@media only screen and (max-width: 768px) {
  .p-service__research__section {
    padding: 48px 0 80px;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__research__section {
    padding: 48px 0 64px;
  }
}
.p-service__research__section .p-service__research__box {
  margin-top: 32px;
}
.p-service__research__section .p-service__research__box .c-flexbox__item {
  margin-bottom: 0;
}
.p-service__research__section .p-service__research__box .c-flexbox__item:last-of-type {
  width: 460px;
}
.p-service__research__section .p-service__research__box .c-flexbox__item h3 {
  margin-bottom: 16px;
  color: #0058aa;
  font-size: 1.8rem;
  font-weight: 600;
}
.p-service__research__section .p-service__research__box .c-flexbox__item p {
  margin-bottom: 16px;
  line-height: 1.7;
}
.p-service__research__section .p-service__research__box .c-flexbox__item .c-btn, .p-service__research__section .p-service__research__box .c-flexbox__item .c-btn--line {
  max-width: 300px;
  margin: 0 0 0 auto;
  margin-top: 24px;
}
@media only screen and (max-width: 600px) {
  .p-service__research__section .p-service__research__box .c-flexbox__item .c-btn, .p-service__research__section .p-service__research__box .c-flexbox__item .c-btn--line {
    max-width: none;
  }
}
.p-service__research__section .p-service__research__box + h2 {
  margin-top: 96px;
}
.p-service__research__section .p-service__research__box + h2 + p {
  margin-bottom: 16px;
  line-height: 1.7;
}
.p-service__research__section .p-service__research__box > p {
  margin-bottom: 16px;
  line-height: 1.7;
}
.p-service__research__section .p-service__research__box .c-table th {
  width: 25%;
}
@media only screen and (max-width: 1024px) {
  .p-service__research__section .p-service__research__box .c-flexbox__item {
    width: 50%;
  }
  .p-service__research__section .p-service__research__box .c-flexbox__item:last-of-type {
    width: 46%;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__research__section .p-service__research__box .c-flexbox__item {
    width: 100%;
  }
  .p-service__research__section .p-service__research__box .c-flexbox__item:last-of-type {
    width: 100%;
  }
}
.p-service__research__section .p-service__research__box .c-title--s {
  margin-top: 40px;
}
.p-service__research__section .p-service__research__box .c-title--s:first-of-type {
  margin-top: 0;
}
.p-service__field__section p {
  margin-bottom: 16px;
}
.p-service__field__section p:last-of-type {
  margin-bottom: 0;
}
.p-service__section {
  padding: 64px 0 96px;
}
.p-service__section.-sec01 {
  padding-top: 0;
  padding-bottom: 120px;
}
.p-service__section.-sec02 {
  padding-top: 144px;
  background: rgba(94, 152, 200, 0.07);
}
@media only screen and (max-width: 1024px) {
  .p-service__section.-sec02 {
    padding-top: calc(64px + 6vw);
  }
}
.p-service__section.-sec04 {
  background: rgba(94, 152, 200, 0.07);
}
.p-service__section.-sec05 {
  padding-bottom: 0;
}
.p-service__section:last-of-type {
  margin-bottom: 0;
  padding-bottom: 0;
}
.p-service__section p {
  margin-bottom: 16px;
}
.p-service__section .c-list--ul {
  margin-bottom: 16px;
  margin-top: 24px;
}
.p-service__section .c-title--s {
  position: relative;
  margin-top: 56px;
}
.p-service__section .c-title--s.-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.p-service__section .c-title--s > h3 {
  width: calc(100% - 200px);
}
.p-service__section .c-title--s .p-membertag {
  display: inline-block;
  width: 180px;
  padding: 8px 12px;
  background: #fc0339;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
}
.p-service__section .p-service__report {
  margin-top: 0;
}
.p-service__section .p-service__report .slick-prev {
  top: -65px;
  right: 80px;
}
.p-service__section .p-service__report .slick-next {
  top: -65px;
  right: -40px;
}
.p-service__section .p-service__report .custom_paging {
  top: -85px;
  right: 0;
}
.p-service__section .p-service__report .c-btn--line {
  max-width: 320px;
}
.p-service__section .p-report__list {
  margin-bottom: 0;
}
.p-service__section .p-report__list > li {
  margin-bottom: 0;
}
.p-service__section .p-report__list > li > a > div {
  background: #fff;
}
.p-service__section .p-report__list > li > a .p-report__list__cap p {
  margin-bottom: 0;
}
.p-service__section .p-report__list > li:hover > a > div {
  background: #6ac3f1;
}
@media only screen and (max-width: 768px) {
  .p-service__section {
    padding: 48px 0 80px;
  }
  .p-service__section .c-title--s {
    margin-top: 40px;
  }
  .p-service__section .c-title--s > h3 {
    width: calc(100% - 170px);
  }
  .p-service__section .c-title--s .p-membertag {
    width: 150px;
    padding: 4px 8px;
    font-size: 1.2rem;
  }
  .p-service__section .p-service__report .slick-prev {
    top: -56px;
    right: 80px;
  }
  .p-service__section .p-service__report .slick-next {
    top: -56px;
    right: -24px;
  }
  .p-service__section .p-service__report .custom_paging {
    top: -76px;
    right: 16px;
    width: 64px;
  }
  .p-service__section .p-report__list > li:nth-child(1), .p-service__section .p-report__list > li:nth-child(2) {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__section.-sec01 {
    padding-bottom: 56px;
  }
  .p-service__section.-sec02 {
    padding-top: calc(48px + 46vw);
  }
  .p-service__section .c-title--s.-flex {
    flex-direction: column-reverse;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .p-service__section .c-title--s > h3 {
    width: 100%;
  }
  .p-service__section .c-title--s .p-membertag {
    width: auto;
    margin-bottom: 8px;
  }
  .p-service__section .p-service__report .c-btn--line {
    width: 100%;
    max-width: none;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__section {
    padding: 48px 0 64px;
  }
  .p-service__section .p-service__report .slick-prev, .p-service__section .p-service__report .slick-next {
    top: auto;
    right: auto;
  }
  .p-service__section .p-service__report .custom_paging {
    top: auto;
    right: auto;
    width: 80px;
  }
}
.p-service__plan__list {
  border-top: 1px solid #ddd;
}
.p-service__plan__list > li {
  border-bottom: 1px solid #ddd;
}
.p-service__plan__list > li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 0;
}
@media only screen and (max-width: 600px) {
  .p-service__plan__list > li > a {
    flex-wrap: wrap;
    padding: 16px 0;
  }
}
.p-service__plan__list > li > a .p-service__plan__list__title {
  width: calc(100% - 220px);
}
.p-service__plan__list > li > a .p-service__plan__list__title ul {
  display: flex;
  margin-bottom: 8px;
}
.p-service__plan__list > li > a .p-service__plan__list__title ul li {
  margin-right: 10px;
  padding: 4px 20px;
  border: 1px solid #136595;
  border-radius: 3px;
  background: #fff;
  color: #136595;
  font-size: 1.2rem;
  transition: border-color 0.3s ease-in-out, background 0.3s ease-in-out, color 0.3s ease-in-out;
}
.p-service__plan__list > li > a .p-service__plan__list__title h4 {
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .p-service__plan__list > li > a .p-service__plan__list__title {
    width: calc(100% - 182px);
  }
  .p-service__plan__list > li > a .p-service__plan__list__title ul li {
    padding: 4px 10px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__plan__list > li > a .p-service__plan__list__title {
    width: 100%;
  }
}
.p-service__plan__list > li > a .p-service__plan__list__data {
  width: 180px;
}
.p-service__plan__list > li > a .p-service__plan__list__data > dl {
  display: flex;
}
.p-service__plan__list > li > a .p-service__plan__list__data > dl + dl {
  margin-top: 4px;
}
.p-service__plan__list > li > a .p-service__plan__list__data > dl > dt {
  margin-right: 6px;
}
.p-service__plan__list > li > a .p-service__plan__list__data > dl > dd {
  color: #0058aa;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .p-service__plan__list > li > a .p-service__plan__list__data {
    width: 150px;
  }
}
@media only screen and (max-width: 600px) {
  .p-service__plan__list > li > a .p-service__plan__list__data {
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: 8px;
    font-size: 1.2rem;
  }
  .p-service__plan__list > li > a .p-service__plan__list__data > dl + dl {
    margin-top: 0;
    margin-left: 16px;
  }
}
.p-service__plan__list > li > a:hover .p-service__plan__list__title ul li {
  border-color: #129fe8;
  background: #129fe8;
  color: #fff;
  transition: border-color 0.3s ease-in-out, background 0.3s ease-in-out, color 0.3s ease-in-out;
}
.p-service__plan__list > li > a:hover .p-service__plan__list__title h4 {
  color: #129fe8;
  transition: color 0.3s ease-in-out;
}
.p-service__case__list {
  border-top: 1px solid #ddd;
}
.p-service__case__list > li {
  position: relative;
  padding: 36px 0;
  border-bottom: 1px solid #ddd;
}
@media only screen and (max-width: 768px) {
  .p-service__case__list > li {
    padding: 20px 0;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__case__list > li {
    padding: 16px 0;
  }
}
.p-service__case__list > li > div h4 {
  margin-bottom: 16px;
  color: #129fe8;
  font-size: 2rem;
  font-weight: bold;
}
.p-service__case__list > li > div img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
@media only screen and (max-width: 1024px) {
  .p-service__case__list > li > div {
    width: calc(100% - 320px);
  }
}
@media only screen and (max-width: 768px) {
  .p-service__case__list > li > div {
    width: calc(100% - 220px);
  }
  .p-service__case__list > li > div h4 {
    font-size: 1.6rem;
  }
  .p-service__case__list > li > div img {
    width: 200px;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__case__list > li > div {
    width: 100%;
  }
  .p-service__case__list > li > div h4 {
    margin-bottom: 12px;
    text-align: center;
  }
  .p-service__case__list > li > div img {
    display: block;
    position: relative;
    margin: 0 auto 16px;
  }
}
.p-service__case__feature {
  margin-bottom: 0;
}
.p-service__case__feature > li {
  position: relative;
  padding-left: 20px;
}
@media only screen and (max-width: 480px) {
  .p-service__case__feature > li {
    padding-left: 16px;
  }
  .p-service__case__feature > li::before {
    width: 10px;
    height: 6px;
    border-width: 2px;
  }
}
.p-service__case__feature > li::before {
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 12px;
  height: 8px;
  transform: rotate(-45deg);
  border-bottom: 3px solid #0058aa;
  border-left: 3px solid #0058aa;
  content: "";
}
.p-service__case__feature > li + li {
  margin-top: 8px;
}
.p-service__faq__box .c-title--s {
  margin-top: 32px;
}
.p-service__faq__qa {
  margin-bottom: 16px;
  border-radius: 3px;
  background: #eff3f6;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
}
.p-service__faq__qa_cont {
  display: none;
  padding: 20px 24px 30px;
}
.p-service__faq__qa_cont .c-list--ol {
  margin-top: 16px;
  padding: 0 24px 0 40px;
  background: none;
}
.p-service__faq__qa_cont a {
  color: #0058aa;
  text-decoration: underline;
  text-decoration: 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}
.p-service__faq__qa_cont a:hover {
  color: #129fe8;
  text-decoration: none;
  text-decoration: 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}
.p-service__faq__opener {
  position: relative;
  padding: 10px 65px 10px 24px;
  background: #46515c;
  color: #fff;
  cursor: pointer;
}
.p-service__faq__opener:before {
  position: absolute;
  top: 0;
  right: 30px;
  bottom: 0;
  width: 1px;
  height: 13px;
  margin: auto;
  background: #fff;
  content: "";
  transition: all 0.3s;
}
.p-service__faq__opener:after {
  position: absolute;
  top: 0;
  right: 24px;
  bottom: 0;
  width: 13px;
  height: 1px;
  margin: auto;
  background: #fff;
  content: "";
}
@media only screen and (max-width: 600px) {
  .p-service__faq__opener {
    padding: 10px 45px 10px 16px;
  }
  .p-service__faq__opener:before {
    right: 22px;
    height: 13px;
  }
  .p-service__faq__opener:after {
    right: 16px;
    width: 13px;
  }
}
.p-service__faq__opener.is-active:before {
  transform: rotate(90deg);
  transition: all 0.3s;
}
.p-service__faq__all_open {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
@keyframes show {
  from {
    transform: translate3d(0, 20%, 0);
    opacity: 0;
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes hide {
  from {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  to {
    transform: translate3d(0, 20%, 0);
    opacity: 0;
  }
}
.p-service__faq__all_open span {
  position: relative;
  padding: 8px 56px 8px 40px;
  background: #129fe8;
  color: #fff;
  font-size: 1.4rem;
  cursor: pointer;
}
.p-service__faq__all_open span:before {
  position: absolute;
  top: 0;
  right: 30px;
  bottom: 0;
  width: 1px;
  height: 13px;
  margin: auto;
  background: #fff;
  content: "";
  transition: all 0.3s;
}
.p-service__faq__all_open span:after {
  position: absolute;
  top: 0;
  right: 24px;
  bottom: 0;
  width: 13px;
  height: 1px;
  margin: auto;
  background: #fff;
  content: "";
}
.p-service__faq__all_open span.is-active:before {
  transform: rotate(90deg);
  transition: all 0.3s;
}
.p-service__faq__all_open .-open {
  display: block;
  animation: show 0.3s ease-in-out;
}
.p-service__faq__all_open .-close {
  display: none;
  animation: hide 0.3s ease-in-out;
}
.p-service__faq__all_open span.is-active .-open {
  display: none;
  animation: hide 0.3s ease-in-out;
}
.p-service__faq__all_open span.is-active .-close {
  display: block;
  animation: show 0.3s ease-in-out;
}
@media only screen and (max-width: 600px) {
  .p-service__faq__all_open {
    flex-direction: column;
  }
  .p-service__faq__all_open.-dbook {
    margin-bottom: 20px;
  }
  .p-service__faq__all_open span {
    width: 100%;
    padding: 10px 24px;
  }
  .p-service__faq__all_open span:before {
    right: 22px;
  }
  .p-service__faq__all_open span:after {
    right: 16px;
  }
}
.p-service__agreement {
  height: 400px;
  margin-bottom: 32px;
  padding: 32px 32px 40px;
  overflow-y: scroll;
  background: #eff5f8;
}
@media only screen and (max-width: 768px) {
  .p-service__agreement {
    padding: 24px 24px 32px;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__agreement {
    height: 50vh;
    padding: 20px 20px 24px;
  }
}
.p-service__agreement > article h4 {
  margin-top: 32px;
  margin-bottom: 8px;
  font-weight: bold;
}
.p-service__agreement > article h4:first-of-type {
  margin-top: 0;
}
.p-service__agreement + .c-btn, .p-service__agreement + .c-btn--line {
  max-width: 440px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 600px) {
  .p-service__agreement + .c-btn, .p-service__agreement + .c-btn--line {
    width: 100%;
    max-width: none;
    padding: 15px 0;
    font-size: 1.2rem;
  }
}
.p-service__overview__txt__btns {
  display: flex;
  justify-content: space-between;
}
.p-service__overview__txt__btns > li {
  width: calc(50% - 20px);
}
.p-service__overview__txt__btns > li .c-btn, .p-service__overview__txt__btns > li .c-btn--line {
  width: 100%;
}
.p-service__overview__txt__btns > li.red .c-btn, .p-service__overview__txt__btns > li.red .c-btn--line {
  background: #c93a3a;
}
.p-service__overview__txt__btns > li.red .c-btn::before, .p-service__overview__txt__btns > li.red .c-btn--line::before {
  background: #8d2424;
}
@media only screen and (max-width: 768px) {
  .p-service__overview__txt__btns {
    margin-left: 0;
    display: inline;
  }
  .p-service__overview__txt__btns > li {
    width: 100%;
  }
  .p-service__overview__txt__btns > li + li {
    padding-top: 20px;
  }
}
@media only screen and (max-width: 480px) {
  .p-service__overview__txt__btns {
    display: inline;
  }
  .p-service__overview__txt__btns > li {
    width: 100%;
  }
  .p-service__overview__txt__btns > li + li {
    width: 100%;
    padding-top: 20px;
  }
}
.p-service__overview__txt__btns .c-btn--line.-showReport {
  margin: 0 0 0 auto;
  border-color: #0058aa;
}
.p-service__overview__txt__btns .c-btn--line.-showReport::before {
  background: #0058aa;
}
.p-service__overview__txt__btns .c-btn--line.-showReport span {
  color: #0058aa;
}
.p-service__overview__txt__btns .c-btn--line.-showReport span i::before {
  background: #0058aa;
}
.p-service__overview__txt__btns .c-btn--line.-showReport span i::after {
  border-color: #0058aa;
}
.p-service__overview__txt__btns .c-btn--line.-showReport:hover span {
  color: #fff;
}
.p-service__overview__txt__btns .c-btn--line.-showReport:hover span i::before {
  background: #fff;
}
.p-service__overview__txt__btns .c-btn--line.-showReport:hover span i::after {
  border-color: #fff;
}
@media only screen and (max-width: 600px) {
  .p-service__overview__txt__btns .c-btn--line.-showReport {
    width: 100%;
    max-width: none;
  }
}
.p-service__dbook__table th {
  background: #09142d;
}
.p-service__dbook__table td {
  background: #dcdddd;
}
.p-service__dbook__table .-green td {
  color: #fff;
  background: #419da6;
}
.p-service .c-featurebox.-dbook .-feature01 dt {
  background: url("../../service/parts/img/service_dbook_feature01.png") left center/30px auto no-repeat;
}
.p-service .c-featurebox.-dbook .-feature02 dt {
  background: url("../../service/parts/img/service_dbook_feature02.png") left center/30px auto no-repeat;
}
.p-service .c-featurebox.-dbook .-feature03 dt {
  background: url("../../service/parts/img/service_dbook_feature03.png") left center/auto 27px no-repeat;
}
.p-service .c-featurebox.-dbook .-feature04 dt {
  background: url("../../service/parts/img/service_dbook_feature04.png") left center/30px auto no-repeat;
}
@media only screen and (max-width: 600px) {
  .p-service .c-featurebox.-dbook .-feature03 dt {
    background: url("../../service/parts/img/service_dbook_feature03_sp.png") left center/auto 27px no-repeat;
  }
  .p-service .c-featurebox.-dbook .-feature04 dt {
    background: url("../../service/parts/img/service_dbook_feature04_sp.png") left center/30px auto no-repeat;
  }
}
.p-service .c-featurebox.-np .-feature01 dt {
  background: url("../../service/parts/img/service_np_feature01.png") left center/40px auto no-repeat;
}
.p-service .c-featurebox.-np .-feature02 dt {
  background: url("../../service/parts/img/service_np_feature02.png") left center/40px auto no-repeat;
}
.p-service .c-featurebox.-np .-feature03 dt {
  background: url("../../service/parts/img/service_np_feature03.png") left center/37px auto no-repeat;
}
.p-service .c-featurebox.-np .-feature04 dt {
  background: url("../../service/parts/img/service_np_feature04.png") left center/auto 27px no-repeat;
}
@media only screen and (max-width: 600px) {
  .p-service .c-featurebox.-np .-feature03 dt {
    background: url("../../service/parts/img/service_np_feature03_sp.png") left center/37px auto no-repeat;
  }
  .p-service .c-featurebox.-np .-feature04 dt {
    background: url("../../service/parts/img/service_np_feature04_sp.png") left center/auto 27px no-repeat;
  }
}
.p-service .c-list--ul.-np > li {
  padding-left: 2em;
  text-indent: -2em;
}

.p-top #wrapper {
  margin-top: 0;
}
.p-top #wrapper > .l-main {
  background: #fff;
}
.p-top__mv {
  position: relative;
  z-index: 2;
  background: url(/common/img/mv.jpg) no-repeat center/cover;
  margin-top: 100px;
  padding-bottom: 70px;
  box-shadow: 0 0px 15px rgba(115, 116, 135, 0.3);
}
.p-top__mv::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(3, 68, 129, 0.3);
}
@media only screen and (max-width: 1024px) {
  .p-top__mv {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 600px) {
  .p-top__mv {
    background: url(/common/img/mv.jpg) no-repeat -670px center/cover;
    padding-bottom: 60px;
  }
}
.p-top__mv::before {
  display: block;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 133, 202, 0.3);
  content: "";
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}
.p-top__mv.bg-on::before {
  opacity: 1;
  transition: opacity 0.5s ease-in-out;
}
.p-top__mv .l-inner, .p-top__mv .l-inner--wide {
  position: relative;
  z-index: 3;
}
.p-top__mv__catch {
  color: #fff;
  font-size: 3.8rem;
  line-height: 2;
  padding-top: 55px;
  padding-bottom: 35px;
}
[lang=ja] .p-top__mv__catch {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-top__mv__catch {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-top__mv__catch {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 1024px) {
  .p-top__mv__catch {
    font-size: 3.3rem;
  }
}
@media only screen and (max-width: 600px) {
  .p-top__mv__catch {
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 480px) {
  .p-top__mv__catch {
    padding-top: 30px;
    padding-bottom: 20px;
  }
}
.p-top__mv__philosophy {
  color: #fff;
}
.p-top__mv__philosophy .-title {
  margin-bottom: 15px;
  font-family: montserrat, sans-serif;
  font-weight: bold;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 1024px) {
  .p-top__mv__philosophy .-title {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 480px) {
  .p-top__mv__philosophy .-title {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }
}
.p-top__mv__philosophy .-txt {
  font-size: 1.7rem;
  letter-spacing: 0.15em;
  line-height: 2;
  opacity: 0.9;
}
[lang=ja] .p-top__mv__philosophy .-txt {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=en] .p-top__mv__philosophy .-txt {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

[lang=zh] .p-top__mv__philosophy .-txt {
  font-family: "Roboto", sans-serif;
}

@media only screen and (max-width: 1024px) {
  .p-top__mv__philosophy .-txt {
    font-size: 1.5rem;
    letter-spacing: 0em;
  }
}
@media only screen and (max-width: 480px) {
  .p-top__mv__philosophy .-txt {
    font-size: 1.35rem;
    line-height: 2;
    opacity: 1;
  }
}
.p-top__mv__philosophy.-en .-txt {
  line-height: 1.5;
}
@media only screen and (max-width: 480px) {
  .p-top__mv__philosophy.-en .-txt {
    line-height: 2;
  }
}
.p-top__mv__philosophy.-zh .-txt {
  line-height: 2.4;
}
@media only screen and (max-width: 480px) {
  .p-top__mv__philosophy.-zh .-txt {
    line-height: 2.5;
  }
}
.p-top__mv ~ section:not(.p-top__news):not(.p-top__service) {
  margin-top: 80px;
}
@media only screen and (max-width: 768px) {
  .p-top__mv ~ section:not(.p-top__news):not(.p-top__service) {
    margin-top: 60px;
  }
}
.p-top__campaign {
  position: relative;
  z-index: 2;
  margin-top: 30px;
  margin-bottom: 80px;
}
.p-top__campaign ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-top__campaign ul > li {
  width: calc(50% - 7.5px);
}
@media only screen and (max-width: 768px) {
  .p-top__campaign ul > li {
    width: 100%;
  }
  .p-top__campaign ul > li + li {
    margin-top: 15px;
  }
}
.p-top__campaign ul > li a {
  display: block;
  position: relative;
  box-shadow: 0 6px 18px rgba(24, 125, 177, 0.2);
  transition: 0.3s;
}
.p-top__campaign ul > li a img {
  width: 100%;
  height: auto;
}
.p-top__campaign ul > li a:hover {
  box-shadow: 0 8px 24px rgba(24, 125, 177, 0.4);
}
.p-top__news {
  position: relative;
  z-index: 2;
  margin-top: 30px;
}
.p-top__news .l-lines {
  position: absolute;
}
.p-top__group {
  position: relative;
  z-index: 2;
  background: rgba(94, 152, 200, 0.07);
  padding: 70px 0 80px;
}
@media only screen and (max-width: 768px) {
  .p-top__group {
    padding: 50px 0 60px;
  }
}
.p-top__group .l-lines {
  position: absolute;
}
.p-top__group__list {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
}
.p-top__group__list li {
  width: calc(33.3333333333% - 20px);
}
@media only screen and (max-width: 768px) {
  .p-top__group__list li {
    width: 100%;
  }
  .p-top__group__list li + li {
    margin-top: 20px;
  }
}
.p-top__group__list li a {
  display: block;
  height: 100%;
  position: relative;
  background: #fff;
  height: 100%;
  padding: 20px 20px 120px 20px;
  padding-bottom: 200px;
  box-shadow: 0 0px 15px rgba(24, 125, 177, 0.4);
  transition: 0.3s;
}
.p-top__group__list li a h3 {
  font-size: 1.7rem;
  font-weight: bold;
  position: relative;
  margin-bottom: 10px;
  padding-right: 20px;
}
.p-top__group__list li a h3::before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  transform: rotate(-45deg);
  width: 10px;
  height: 10px;
  margin: auto;
  border-right: 2px solid #0058aa;
  border-bottom: 2px solid #0058aa;
  box-sizing: border-box;
  transition: 0.3s;
}
.p-top__group__list li a figure {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 180px;
  width: 100%;
  overflow: hidden;
}
.p-top__group__list li a figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  width: auto;
  max-width: unset;
  height: 100%;
  transition: 0.3s;
}
@media only screen and (max-width: 768px) {
  .p-top__group__list li a figure img {
    height: auto;
    width: 100%;
  }
}
.p-top__group__list li a:hover {
  color: #fff;
  background: #0058aa;
}
.p-top__group__list li a:hover h3::before {
  border-color: #fff;
}
.p-top__group__list li a:hover figure img {
  transform: translate(-50%, -50%) scale(1.2);
}
.p-top__service {
  position: relative;
  z-index: 1;
  background: rgba(94, 152, 200, 0.07);
  padding-bottom: 80px;
}
@media only screen and (max-width: 768px) {
  .p-top__service {
    padding-bottom: 60px;
  }
}
_:-ms-fullscreen, :root .p-top__service {
  background-attachment: inherit;
}

.p-top__service__list {
  display: flex;
  justify-content: space-between;
}
.p-top__service__list > li {
  width: 220px;
}
@media only screen and (max-width: 1024px) {
  .p-top__service__list > li {
    width: 21vw;
  }
}
@media only screen and (max-width: 600px) {
  .p-top__service__list > li {
    width: 42.5vw;
    margin-bottom: 4vw;
  }
}
.p-top__service__list > li a {
  display: block;
  position: relative;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(24, 125, 177, 0.2);
  transition: box-shadow 0.3s ease-in-out;
}
.p-top__service__list > li a figure {
  z-index: 0;
  position: relative;
  width: 100%;
  height: 220px;
  background: #fff;
  text-align: center;
}
.p-top__service__list > li a figure::before {
  display: block;
  z-index: -1;
  position: absolute;
  right: -150%;
  width: 200%;
  height: 100%;
  transform: skewX(-45deg);
  background: #ecf7ff;
  content: "";
  transition: right 0.3s ease-in-out;
}
.p-top__service__list > li a figure img {
  width: 64px;
  margin-top: 60px;
}
.p-top__service__list > li a figure figcaption {
  margin-top: 12px;
  color: #0058aa;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .p-top__service__list > li a figure {
    height: 21vw;
  }
  .p-top__service__list > li a figure img {
    width: 6vw;
    margin-top: 5vw;
  }
  .p-top__service__list > li a figure figcaption {
    margin-top: 1vw;
    font-size: 2vw;
  }
}
@media only screen and (max-width: 600px) {
  .p-top__service__list > li a figure {
    height: 42.5vw;
  }
  .p-top__service__list > li a figure img {
    width: 12vw;
    margin-top: 13vw;
  }
  .p-top__service__list > li a figure figcaption {
    margin-top: 1.2vw;
    font-size: 3.4vw;
  }
}
.p-top__service__list > li a span {
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 32px;
  height: 32px;
  background: #0058aa;
}
.p-top__service__list > li a span i {
  display: block;
  position: relative;
  position: absolute;
  top: 0;
  right: 8px;
  bottom: 0;
  width: 12px;
  height: 19px;
  margin: auto;
}
.p-top__service__list > li a span i::before {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  margin: auto;
  background: #fff;
  content: "";
}
.p-top__service__list > li a span i::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 7px;
  height: 7px;
  margin: auto;
  transform: rotate(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  content: "";
}
.p-top__service__list > li a:hover {
  box-shadow: 0 8px 24px rgba(24, 125, 177, 0.4);
  transition: box-shadow 0.3s ease-in-out;
}
.p-top__service__list > li a:hover figure::before {
  right: -50%;
  transition: right 0.3s ease-in-out;
}
.p-top__service__list + .c-btn, .p-top__service__list + .c-btn--line {
  max-width: 250px;
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 600px) {
  .p-top__service__list {
    flex-wrap: wrap;
  }
  .p-top__service__list + .c-btn, .p-top__service__list + .c-btn--line {
    width: 100%;
    max-width: none;
  }
}
.p-top__press {
  z-index: 2;
  position: relative;
}
.p-top__press .l-lines {
  position: absolute;
}
.p-top__press__news {
  padding: 16px 40px 40px;
  background: #ecf7ff;
  box-shadow: 0 6px 18px rgba(24, 125, 177, 0.2);
}
@media only screen and (max-width: 768px) {
  .p-top__press__news {
    margin-top: 24px;
    padding: 4px 16px 24px;
  }
}
.p-top__press__news__list {
  margin-bottom: 40px;
}
@media screen and (min-width: 601px) {
  .p-top__press__news__list {
    margin-bottom: 0;
  }
}
.p-top__press__news__list li a {
  display: block;
  padding: 20px 0 16px;
  border-bottom: 1px solid #c0d9ee;
  position: relative;
}
.p-top__press__news__list li a .pdf {
  right: 3px;
  top: 0px;
}
.p-top__press__news__list li a dl {
  position: relative;
}
.p-top__press__news__list li a dl dt {
  color: #aaa;
  font-size: 1.2rem;
}
.p-top__press__news__list li a dl dd {
  margin-top: 10px;
  transition: color 0.3s ease-in-out;
}
.p-top__press__news__list li a dl dd ul {
  display: flex;
  position: absolute;
  top: -3px;
  left: 80px;
  margin-bottom: 8px;
}
.p-top__press__news__list li a dl dd ul li {
  padding: 3px 16px;
  border: 1px solid #136595;
  border-radius: 3px;
  background: #fff;
  color: #136595;
  font-size: 1.2rem;
}
.p-top__press__news__list li a dl dd ul li + li {
  margin-left: 6px;
}
@media only screen and (max-width: 768px) {
  .p-top__press__news__list li a dl dd ul {
    top: -2px;
  }
  .p-top__press__news__list li a dl dd ul li {
    padding: 3px 8px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 480px) {
  .p-top__press__news__list li a dl dd ul {
    position: relative;
    top: auto;
    left: auto;
    flex-wrap: wrap;
    margin-bottom: 4px;
  }
  .p-top__press__news__list li a dl dd ul li {
    margin: 0 4px 4px 0;
  }
  .p-top__press__news__list li a dl dd ul li + li {
    margin: 0 4px 4px 0;
  }
}
.p-top__press__news__list li a:hover dl dd {
  color: #136595;
  transition: color 0.3s ease-in-out;
}
@media only screen and (max-width: 480px) {
  .p-top__press__news__list {
    margin-bottom: 24px;
  }
  .p-top__press__news__list li a {
    padding: 12px 0 12px;
  }
  .p-top__press__news__list li a .pdf {
    right: 5px;
    top: -2px;
  }
  .p-top__press__news__list li a dl dd {
    margin-top: 6px;
  }
}
.p-top__student {
  position: relative;
  z-index: 1;
  margin-top: 80px;
}
_:-ms-fullscreen, :root .p-top__student {
  background: url(/parts/img/top_student_bg.jpg) center/2400px auto no-repeat;
}

.p-top__academia, .p-top__recruit {
  padding: 60px 0;
  position: relative;
  z-index: 0;
}
.p-top__academia::before, .p-top__academia::after, .p-top__recruit::before, .p-top__recruit::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
_:-ms-fullscreen, :root .p-top__academia::before, :root .p-top__academia::after, :root .p-top__recruit::before, :root .p-top__recruit::after {
  display: none;
}

.p-top__academia .l-inner > div, .p-top__academia .l-inner--wide > div, .p-top__recruit .l-inner > div, .p-top__recruit .l-inner--wide > div {
  width: 450px;
}
.p-top__academia .l-inner p, .p-top__academia .l-inner--wide p, .p-top__recruit .l-inner p, .p-top__recruit .l-inner--wide p {
  margin-bottom: 24px;
  line-height: 1.75;
}
.p-top__academia .l-inner .c-btn, .p-top__academia .l-inner--wide .c-btn, .p-top__academia .l-inner .c-btn--line, .p-top__academia .l-inner--wide .c-btn--line, .p-top__recruit .l-inner .c-btn, .p-top__recruit .l-inner--wide .c-btn, .p-top__recruit .l-inner .c-btn--line, .p-top__recruit .l-inner--wide .c-btn--line {
  max-width: 250px;
}
@media only screen and (max-width: 1024px) {
  .p-top__academia, .p-top__recruit {
    padding: 80px 0;
  }
  _:-ms-fullscreen, :root .p-top__academia::after, :root .p-top__recruit::after {
    display: block;
  }
  .p-top__academia .l-inner > div, .p-top__academia .l-inner--wide > div, .p-top__recruit .l-inner > div, .p-top__recruit .l-inner--wide > div {
    width: 45%;
  }
  _:-ms-fullscreen, :root .p-top__academia .l-inner > div, :root .p-top__academia .l-inner--wide > div, :root .p-top__recruit .l-inner > div, :root .p-top__recruit .l-inner--wide > div {
    width: 45%;
  }
}
@media only screen and (max-width: 768px) {
  .p-top__academia, .p-top__recruit {
    padding: 56px 0;
  }
}
@media only screen and (max-width: 600px) {
  .p-top__academia::before, .p-top__recruit::before {
    background-position: center;
  }
  .p-top__academia .l-inner > div, .p-top__academia .l-inner--wide > div, .p-top__recruit .l-inner > div, .p-top__recruit .l-inner--wide > div {
    width: 60%;
    margin: 0 auto;
  }
  .p-top__academia .l-inner .c-btn, .p-top__academia .l-inner--wide .c-btn, .p-top__academia .l-inner .c-btn--line, .p-top__academia .l-inner--wide .c-btn--line, .p-top__recruit .l-inner .c-btn, .p-top__recruit .l-inner--wide .c-btn, .p-top__recruit .l-inner .c-btn--line, .p-top__recruit .l-inner--wide .c-btn--line {
    width: 100%;
    max-width: none;
  }
}
.p-top__academia::before {
  background: url(/parts/img/top_academia_bg.jpg) center right/cover no-repeat;
}
.p-top__academia::after {
  background: rgba(255, 255, 255, 0.6);
}
.p-top__academia .l-inner > div, .p-top__academia .l-inner--wide > div {
  margin-left: auto;
}
.p-top__academia .l-inner .c-btn, .p-top__academia .l-inner--wide .c-btn, .p-top__academia .l-inner .c-btn--line, .p-top__academia .l-inner--wide .c-btn--line {
  margin-left: auto;
}
@media only screen and (max-width: 1024px) {
  .p-top__academia .l-inner > div, .p-top__academia .l-inner--wide > div {
    margin: 0 5% 0 auto;
  }
}
.p-top__recruit::before {
  background: url(/parts/img/top_recruit_bg.jpg) center left/cover no-repeat;
}
.p-top__recruit::after {
  background: rgba(0, 88, 170, 0.3);
}
.p-top__recruit .l-inner > div, .p-top__recruit .l-inner--wide > div {
  margin-right: auto;
}
.p-top__recruit .l-inner > div .c-title--sec, .p-top__recruit .l-inner--wide > div .c-title--sec {
  color: #fff;
}
.p-top__recruit .l-inner p, .p-top__recruit .l-inner--wide p {
  color: #fff;
}
.p-top__recruit .l-inner .c-btn, .p-top__recruit .l-inner--wide .c-btn, .p-top__recruit .l-inner .c-btn--line, .p-top__recruit .l-inner--wide .c-btn--line {
  margin: 0 0 0 auto;
}
@media only screen and (max-width: 1024px) {
  .p-top__recruit .l-inner > div, .p-top__recruit .l-inner--wide > div {
    margin: 0 auto 0 5%;
  }
}
.p-top .l-footer {
  z-index: 1;
  position: relative;
  padding-top: 24px;
}
.p-top .l-breadCrumb {
  display: none;
}

.u-aL {
  text-align: left;
}

.u-aC {
  text-align: center;
}

.u-aR {
  text-align: right;
}

.u-mt--0 {
  margin-top: 0px !important;
}

.u-mb--0 {
  margin-bottom: 0px !important;
}

.u-mt--10 {
  margin-top: 10px !important;
}

.u-mb--10 {
  margin-bottom: 10px !important;
}

.u-mt--20 {
  margin-top: 20px !important;
}

.u-mb--20 {
  margin-bottom: 20px !important;
}

.u-mt--30 {
  margin-top: 30px !important;
}

.u-mb--30 {
  margin-bottom: 30px !important;
}

.u-mt--40 {
  margin-top: 40px !important;
}

.u-mb--40 {
  margin-bottom: 40px !important;
}

.u-mt--50 {
  margin-top: 50px !important;
}

.u-mb--50 {
  margin-bottom: 50px !important;
}

.u-mt--60 {
  margin-top: 60px !important;
}

.u-mb--60 {
  margin-bottom: 60px !important;
}

.u-mt--70 {
  margin-top: 70px !important;
}

.u-mb--70 {
  margin-bottom: 70px !important;
}

.u-mt--80 {
  margin-top: 80px !important;
}

.u-mb--80 {
  margin-bottom: 80px !important;
}

.u-mt--90 {
  margin-top: 90px !important;
}

.u-mb--90 {
  margin-bottom: 90px !important;
}

.u-mt--100 {
  margin-top: 100px !important;
}

.u-mb--100 {
  margin-bottom: 100px !important;
}

.u-pt--0 {
  padding-top: 0px !important;
}

.u-pb--0 {
  padding-bottom: 0px !important;
}

.u-pt--10 {
  padding-top: 10px !important;
}

.u-pb--10 {
  padding-bottom: 10px !important;
}

.u-pt--20 {
  padding-top: 20px !important;
}

.u-pb--20 {
  padding-bottom: 20px !important;
}

.u-pt--30 {
  padding-top: 30px !important;
}

.u-pb--30 {
  padding-bottom: 30px !important;
}

.u-pt--40 {
  padding-top: 40px !important;
}

.u-pb--40 {
  padding-bottom: 40px !important;
}

.u-pt--50 {
  padding-top: 50px !important;
}

.u-pb--50 {
  padding-bottom: 50px !important;
}

.u-pt--60 {
  padding-top: 60px !important;
}

.u-pb--60 {
  padding-bottom: 60px !important;
}

.u-pt--70 {
  padding-top: 70px !important;
}

.u-pb--70 {
  padding-bottom: 70px !important;
}

.u-pt--80 {
  padding-top: 80px !important;
}

.u-pb--80 {
  padding-bottom: 80px !important;
}

.u-pt--90 {
  padding-top: 90px !important;
}

.u-pb--90 {
  padding-bottom: 90px !important;
}

.u-pt--100 {
  padding-top: 100px !important;
}

.u-pb--100 {
  padding-bottom: 100px !important;
}/*# sourceMappingURL=style.css.map */