@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Upright:wght@600&family=Noto+Sans+JP:wght@400;700&family=Oswald&display=swap");
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

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

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

img {
  vertical-align: top;
}
img[usemap] {
  border-width: 0;
}
a img {
  border-width: 0;
  text-decoration: none;
}

ul, li {
  list-style: none;
}

* {
  box-sizing: border-box;
}
*::after, *::before {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  margin: 0;
  padding: 0;
  background-color: #fff;
  color: #222;
  font-size: 1.6rem;
  line-height: 2;
  -webkit-text-size-adjust: none;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 800px) {
  body {
    font-size: 1.4rem;
  }
}

a {
  text-decoration: none;
  color: #005BAC;
  border: none;
}
a, a *, a::before, a::after, a *::before, a *::after {
  transition: all 0.3s ease;
}
@media screen and (min-width: 801px) {
  a:hover img {
    opacity: 0.75;
  }
}
a img {
  border: none;
}

input {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
}
@media screen and (max-width: 800px) {
  input {
    font-size: 1.4rem;
  }
}

button, select, input[type=button], input[type=submit] {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  cursor: pointer;
  transition: all 0.3s ease;
}
@media screen and (max-width: 800px) {
  button, select, input[type=button], input[type=submit] {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 801px) {
  button:hover, select:hover, input[type=button]:hover, input[type=submit]:hover {
    opacity: 0.75;
  }
}
button::after, button::before, select::after, select::before, input[type=button]::after, input[type=button]::before, input[type=submit]::after, input[type=submit]::before {
  transition: all 0.3s ease;
}

img {
  width: 100%;
  height: auto;
}

p {
  margin: 20px 0;
}
p:first-child {
  margin-top: 0;
}
p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 800px) {
  p {
    margin: 16px 0;
  }
}

h1, h2, h3, h4 {
  line-height: 1.4;
  color: #002660;
  letter-spacing: 0.05em;
  font-weight: 700;
}

h3, h4 {
  line-height: 1.6;
}

sup, sub {
  font-size: 70%;
  position: relative;
}

sup {
  vertical-align: text-top;
  top: -0.3em;
}

sub {
  vertical-align: text-bottom;
  bottom: -0.3em;
}

small {
  font-size: 1.4rem;
  display: block;
}
@media screen and (max-width: 800px) {
  small {
    font-size: 1.2rem;
  }
}

.l-header {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 801px) {
  .l-header a:hover {
    opacity: 0.75;
  }
}
.l-header__logo {
  width: 400px;
  padding: 34px 0 0 40px;
}
.l-header__navigation {
  width: calc(100% - 400px);
  font-weight: 700;
  z-index: 100;
}
.l-header__navigation nav {
  display: flex;
  flex-wrap: wrap;
}
.l-header__navigation__main {
  width: 100%;
  order: 1;
  padding: 66px 16px 16px 16px;
}
.l-header__navigation__main > ul {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  font-size: 1.6rem;
}
.l-header__navigation__main > ul > li {
  margin: 0 18px;
}
.l-header__navigation__main > ul > li a, .l-header__navigation__main > ul > li .no-link > span {
  color: #222;
  position: relative;
  display: block;
}
@media screen and (min-width: 801px) {
  .l-header__navigation__main > ul > li.is-pc-order0 {
    order: -2;
  }
  .l-header__navigation__main > ul > li.is-pc-order1 {
    order: -1;
  }
  .l-header__navigation__main > ul > li .-pc-drop > a {
    pointer-events: none;
  }
  .l-header__navigation__main > ul > li .-pc-drop::after {
    top: 16px;
    right: 0;
  }
  .l-header__navigation__main > ul > li .-pc-drop.is-active::after {
    top: 20px;
  }
}
.l-header__navigation__main > ul > li .inner-list {
  position: absolute;
  left: 0;
  top: 110px;
  width: 100%;
  background-color: #E5EEF7;
  padding: 24px 0;
}
.l-header__navigation__main > ul > li .inner-list > ul {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  text-align: center;
}
.l-header__navigation__main > ul > li .inner-list > ul > li {
  width: 200px;
  height: 80px;
  margin: 16px 20px;
  background-size: cover;
  background-position: center center;
}
@media screen and (max-width: 800px) {
  .l-header__navigation__main > ul > li .inner-list > ul > li {
    background-image: none !important;
  }
}
.l-header__navigation__main > ul > li .inner-list > ul > li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.5);
  line-height: 1.4;
  padding: 8px;
}
.l-header__navigation__main > ul > li.is-icon-nav {
  width: 180px;
  height: 50px;
  margin: 0;
  font-size: 1.1rem;
  position: absolute;
  top: 0;
}
.l-header__navigation__main > ul > li.is-icon-nav > a {
  width: 100%;
  height: 100%;
  background-position: 8px center;
  background-repeat: no-repeat;
  background-size: 40px 40px;
  padding-left: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.l-header__navigation__main > ul > li.is-icon-nav.-mail {
  right: 360px;
}
.l-header__navigation__main > ul > li.is-icon-nav.-mail > a {
  background-image: url("/assets/img/common/icon_mail-white.svg");
  background-color: #005AE1;
  color: #fff;
}
.l-header__navigation__main > ul > li.is-icon-nav.-download {
  right: 180px;
}
.l-header__navigation__main > ul > li.is-icon-nav.-download > a {
  background-image: url("/assets/img/common/icon_download-white.svg");
  background-color: #002660;
  color: #fff;
}
.l-header__navigation__main > ul > li.is-icon-nav.-hibino {
  right: 0;
}
.l-header__navigation__main > ul > li.is-icon-nav.-hibino > a {
  padding: 0 !important;
}
.l-header__navigation__main > ul > li.is-icon-nav.-hibino > a img {
  width: 140px;
}
.l-header__navigation__telephone {
  width: 180px;
  height: 50px;
  font-size: 1.1rem;
  position: absolute;
  top: 0;
  right: 540px;
}
.l-header__navigation__telephone > span {
  background-image: url("/assets/img/common/icon_telephone-navy.svg");
  background-color: #C5E2F2;
  color: #002660;
  width: 100%;
  height: 100%;
  background-position: 8px center;
  background-repeat: no-repeat;
  background-size: 40px 40px;
  padding-left: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.l-header__navigation__telephone .inner-list {
  z-index: 1;
  padding: 8px 16px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  background-color: #C5E2F2;
  position: absolute;
  left: 0;
  top: 50px;
}
.l-header__navigation__telephone .inner-list > li {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-items: center;
}
.l-header__navigation__telephone .inner-list > li .office {
  font-size: 1.3rem;
  width: 88px;
}
.l-header__navigation__telephone .inner-list > li .label {
  font-size: 1rem;
  padding-right: 2px;
  align-self: bottom;
  color: #002660;
}
.l-header__navigation__telephone .inner-list > li .number {
  font-size: 1.6rem;
  margin-left: 2px;
  color: #002660;
}
@media screen and (min-width: 801px) {
  .l-header.is-fixed {
    position: fixed;
    z-index: 10;
    background-color: rgba(255, 255, 255, 0.8);
  }
  .l-header.is-fixed .l-header__logo {
    max-width: 300px;
    padding-top: 20px;
  }
  .l-header.is-fixed .l-header__navigation__main {
    padding-top: 32px;
    padding-bottom: 4px;
    min-height: 68px;
  }
  .l-header.is-fixed .l-header__navigation__main > ul > li .inner-list {
    top: 68px;
  }
  .l-header.is-fixed .l-header__navigation__main > ul > li.is-icon-nav {
    height: 30px;
  }
  .l-header.is-fixed .l-header__navigation__main > ul > li.is-icon-nav > a {
    background-size: 24px 24px;
    padding-left: 22px;
  }
  .l-header.is-fixed .l-header__navigation__main > ul > li.is-icon-nav.-hibino > a img {
    width: 100px;
  }
  .l-header.is-fixed .l-header__navigation__telephone {
    height: 30px;
  }
  .l-header.is-fixed .l-header__navigation__telephone > span {
    padding-left: 24px;
    background-size: 24px 24px;
  }
  .l-header.is-fixed .l-header__navigation__telephone .inner-list {
    top: 30px;
  }
}
@media screen and (max-width: 1200px) {
  .l-header__logo {
    width: 300px;
    padding-left: 24px;
  }
  .l-header__navigation {
    width: calc(100% - 300px);
  }
  .l-header__navigation__main {
    padding-right: 8px;
  }
  .l-header__navigation__main > ul > li {
    margin: 0 14px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav {
    width: 160px;
    font-size: 1rem;
  }
  .l-header__navigation__main > ul > li.is-icon-nav > a {
    background-size: 24px 24px;
    padding-left: 22px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-mail {
    right: 280px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-download {
    right: 120px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-hibino {
    width: 120px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-hibino > a img {
    width: 100px;
  }
  .l-header__navigation__telephone {
    width: 160px;
    font-size: 1rem;
    right: 440px;
  }
  .l-header__navigation__telephone > span {
    background-size: 24px 24px;
    padding-left: 24px;
  }
}
@media screen and (max-width: 1040px) {
  .l-header__logo {
    width: 240px;
  }
  .l-header__navigation {
    width: calc(100% - 240px);
  }
  .l-header__navigation__main {
    padding-right: 0;
    padding-left: 0;
  }
  .l-header__navigation__main > ul {
    font-size: 1.4rem;
  }
  .l-header__navigation__main > ul > li {
    margin: 0 8px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav {
    width: 140px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav > a {
    background-position: 4px center;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-mail {
    right: 260px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-download {
    right: 120px;
  }
  .l-header__navigation__telephone {
    width: 140px;
    right: 400px;
  }
  .l-header__navigation__telephone > span {
    background-position: 4px center;
  }
}
@media screen and (max-width: 800px) {
  .l-header {
    background-color: #fff;
    width: 100%;
    height: 54px;
    z-index: 10;
    transition: all 0.3s ease;
  }
  .l-header__logo {
    width: 180px;
    padding: 16px 0 0 12px;
  }
  .l-header__navigation {
    width: calc(100% - 180px);
  }
  .l-header__navigation__sp {
    color: #fff;
    font-size: 0.9rem;
    font-weight: 700;
  }
  .l-header__navigation__sp__button {
    width: 54px;
    height: 54px;
    position: fixed;
    padding: 33px 0 0 0;
    background-color: #002660;
    text-align: center;
    right: 0;
    top: 0;
    z-index: 100;
  }
  .l-header__navigation__sp__button span {
    position: absolute;
    display: block;
    background-color: #fff;
    width: 16px;
    height: 1.5px;
    left: 50%;
    margin-left: -8px;
    transition: all 0.3s;
  }
  .l-header__navigation__sp__button span:first-child {
    top: 14px;
  }
  .l-header__navigation__sp__button span:nth-child(2) {
    top: 20px;
  }
  .l-header__navigation__sp__button span:last-child {
    top: 26px;
  }
  .l-header__navigation__sp__button.is-active span:first-child {
    -webkit-transform: rotate(45deg) translate(4px, 4px);
            transform: rotate(45deg) translate(4px, 4px);
  }
  .l-header__navigation__sp__button.is-active span:nth-child(2) {
    opacity: 0;
  }
  .l-header__navigation__sp__button.is-active span:last-child {
    -webkit-transform: rotate(-45deg) translate(4.5px, -4.5px);
            transform: rotate(-45deg) translate(4.5px, -4.5px);
  }
  .l-header__navigation__sp__mail {
    width: 54px;
    height: 54px;
    position: absolute;
    top: 0;
    right: 54px;
    z-index: 100;
  }
  .l-header__navigation__sp__mail a {
    width: 100%;
    height: 100%;
    color: inherit;
    background: #005AE1 url("/assets/img/common/icon_mail-white.svg") center 5px no-repeat;
    background-size: 30px 30px;
    padding: 33px 0 0 0;
    display: block;
    text-align: center;
  }
  .l-header__navigation__main {
    position: fixed;
    height: calc(100% - 54px);
    overflow-y: scroll;
    margin-left: -180px;
    top: 54px;
    padding: 0;
    background-color: #E5EEF7;
    z-index: 100;
  }
  .l-header__navigation__main > ul > li {
    width: 100%;
    margin: 0 8px;
    font-size: 1.8rem;
  }
  .l-header__navigation__main > ul > li:not(:first-child) {
    border-top: 1px rgba(0, 91, 172, 0.1) solid;
  }
  .l-header__navigation__main > ul > li > a::after, .l-header__navigation__main > ul > li .-pc-drop > a::after {
    display: block;
    content: "";
    position: absolute;
    background: url("/assets/img/common/icon_arrow-mini-right-navy.svg") center center no-repeat;
    background-size: 14px 7px;
    width: 14px;
    height: 7px;
    right: 16px;
    top: 50%;
    margin-top: -4px;
  }
  .l-header__navigation__main > ul > li a, .l-header__navigation__main > ul > li .no-link > span {
    color: #002660;
    padding: 18px 12px;
  }
  .l-header__navigation__main > ul > li .no-link {
    pointer-events: none;
  }
  .l-header__navigation__main > ul > li .inner-list {
    position: static;
    padding: 0;
  }
  .l-header__navigation__main > ul > li .inner-list > ul {
    justify-content: flex-start;
    padding-bottom: 8px;
  }
  .l-header__navigation__main > ul > li .inner-list > ul > li {
    width: calc(50% - 2px);
    height: 60px;
    margin: 1px;
    font-size: 1.6rem;
  }
  .l-header__navigation__main > ul > li .inner-list > ul > li a {
    color: #002660;
    background-color: rgba(255, 255, 255, 0.65);
    padding: 0 10px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav {
    width: calc(50% - 0.5px);
    height: 74px;
    font-size: 1.2rem;
    position: static;
    top: auto;
    border: none;
    margin-bottom: 16px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav > a {
    background-position: center 8px;
    padding: 44px 0 0 0;
  }
  .l-header__navigation__main > ul > li.is-icon-nav > a::after {
    display: none;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-mail {
    margin-right: 0.5px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-download {
    margin-left: 0.5px;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-hibino {
    width: 100%;
    height: 88px;
    background-color: #fff;
    margin: 16px 0 0 0;
  }
  .l-header__navigation__main > ul > li.is-icon-nav.-hibino > a img {
    width: 180px;
  }
  .l-header__navigation__main > ul > li.is-small {
    text-align: center;
    font-size: 1.4rem;
    border: none;
  }
  .l-header__navigation__main > ul > li.is-small > a {
    padding: 6px 0;
    margin: 6px 0;
  }
  .l-header__navigation__main > ul > li.is-small > a::after {
    display: none;
  }
  .l-header__navigation__telephone {
    width: 54px;
    height: 54px;
    font-size: 0.9;
    top: 0;
    right: 108px;
    z-index: 100;
  }
  .l-header__navigation__telephone > span {
    background-position: center 5px;
    background-size: 30px 30px;
    padding: 33px 0 0 0;
    display: block;
    text-align: center;
  }
  .l-header__navigation__telephone .inner-list {
    left: auto;
    right: -108px;
    top: 54px;
    padding: 8px 20px;
  }
  .l-header__navigation__telephone .inner-list > li {
    margin: 16px 0;
  }
  .l-header__navigation__telephone .inner-list > li .office {
    font-size: 1.6rem;
    width: 112px;
  }
  .l-header__navigation__telephone .inner-list > li .label {
    font-size: 1.2rem;
  }
  .l-header__navigation__telephone .inner-list > li .number {
    font-size: 1.8rem;
  }
}

.l-pankuzu {
  background-color: #f5f5f5;
  font-size: 1.2rem;
  padding: 8px 40px;
}
.l-pankuzu__list {
  display: flex;
}
.l-pankuzu__list > li + li::before {
  content: ">";
  color: #999;
  margin: 0 0.75em;
  display: inline-block;
}
.l-pankuzu__list > li a {
  color: #222;
}
.l-pankuzu__list > li a:hover {
  text-decoration: underline;
}
.l-pankuzu__list > li .is-current {
  font-weight: 700;
  pointer-events: none;
}
@media screen and (max-width: 800px) {
  .l-pankuzu {
    font-size: 1rem;
    padding: 3px 8px 4px 8px;
  }
  .l-pankuzu__list {
    overflow-x: auto;
    white-space: nowrap;
  }
}

.l-footer {
  background-color: #fff;
  padding: 120px 0 48px 0;
  position: relative;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .l-footer {
    padding-right: 24px;
    padding-left: 24px;
  }
}
.l-footer a {
  color: #222;
  display: block;
}
@media screen and (min-width: 801px) {
  .l-footer a:hover {
    opacity: 0.7;
  }
}
.l-footer__logo {
  width: 300px;
}
@media screen and (min-width: 801px) and (max-width: 1200px) {
  .l-footer__logo {
    width: 240px;
  }
}
.l-footer__logo > ul > li {
  margin-bottom: 24px;
}
.l-footer__logo > ul > li a {
  display: block;
}
.l-footer__logo > ul > li .is-nea {
  width: 100%;
}
.l-footer__logo > ul > li .is-hibino {
  width: 150px;
}
.l-footer__navigation {
  width: calc(100% - 300px);
  justify-content: space-between;
  padding-left: 17.7777777778%;
}
@media screen and (min-width: 801px) {
  .l-footer__navigation {
    display: flex !important;
  }
}
.l-footer__navigation > ul {
  font-weight: 700;
  line-height: 1.4;
  max-width: 192px;
}
.l-footer__navigation > ul > li {
  margin: 16px 0;
}
.l-footer__navigation > ul > li .inner-list {
  font-weight: normal;
  margin-left: 1em;
}
.l-footer__navigation > ul > li .inner-list > li {
  margin: 16px 0;
}
@media screen and (min-width: 801px) and (max-width: 1200px) {
  .l-footer__navigation {
    width: calc(100% - 240px);
    padding-left: 60px;
  }
  .l-footer__navigation > ul > li {
    margin-top: 0;
    font-size: 1.4rem;
  }
}
.l-footer__copyright {
  width: 100%;
  font-size: 1.2rem;
  margin-top: 100px;
  display: flex;
  justify-content: space-between;
}
.l-footer__copyright__navigation ul li {
  display: inline-block;
  margin-right: 24px;
}
@media screen and (max-width: 800px) {
  .l-footer {
    padding: 64px 0 32px 0;
  }
  .l-footer__logo {
    width: 100%;
  }
  .l-footer__logo > ul > li a {
    margin: 0 auto;
  }
  .l-footer__copyright {
    margin-top: 16px;
    display: block;
    text-align: center;
  }
  .l-footer__copyright small {
    font-size: 1.2rem;
  }
}

.l-pagetop {
  width: 64px;
  height: 64px;
  background-color: #002660;
  position: fixed;
  right: 0;
  bottom: 0;
  text-indent: -9999px;
  overflow: hidden;
  border: none;
  display: block;
  z-index: 10;
}
.l-pagetop::after {
  position: absolute;
  display: block;
  content: "";
  left: 50%;
  top: 50%;
  margin: -3px 0 0 -4px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}
@media screen and (min-width: 801px) {
  .l-pagetop:hover {
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
  }
  .l-pagetop:hover::after {
    margin-top: -7px;
  }
}
@media screen and (max-width: 800px) {
  .l-pagetop {
    width: 48px;
    height: 48px;
    position: absolute;
    bottom: auto;
    top: -24px;
    right: 50%;
    margin-right: -24px;
    z-index: 1;
    opacity: 1 !important;
    display: block !important;
  }
}

.l-main {
  margin: 0 auto;
  overflow: hidden;
  width: 100%;
}

.l-main-visual {
  margin-bottom: 64px;
}
.l-main-visual__inner {
  position: relative;
}
.l-main-visual__inner__text {
  letter-spacing: 0.15em;
  position: absolute;
  left: 12.5%;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.l-main-visual__inner__text > .title {
  padding-top: 80px;
  font-size: 9.2rem;
  line-height: 1.55;
  font-weight: 700;
  color: #002660;
  text-shadow: 2px 2px 0 #fff;
}
.l-main-visual__inner__text > .decorative {
  font-size: 7.2rem;
  color: #E5EEF7;
  font-family: "Oswald", sans-serif;
}
.l-main-visual__inner__image {
  margin: 0 0 0 25%;
  height: 600px;
}
.l-main-visual__inner__image img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
.l-main-visual.-light .l-main-visual__inner__image {
  background-color: #C5E2F2;
  background: linear-gradient(to right, #c5e2f2 0%, #e5eef7 100%);
}
@media screen and (min-width: 801px) {
  .l-main-visual.-sub .l-main-visual__inner__image {
    height: 400px;
  }
}
@media screen and (max-width: 800px) {
  .l-main-visual {
    margin-bottom: 16px;
  }
  .l-main-visual__inner__text {
    letter-spacing: 0.1em;
    left: 4.2666666667%;
  }
  .l-main-visual__inner__text > .title {
    padding-top: 24px;
    font-size: 3.2rem;
    line-height: 1.1;
    text-shadow: 1px 1px 0 #fff;
  }
  .l-main-visual__inner__text > .decorative {
    font-size: 2.6rem;
    line-height: 1;
    margin-top: 8px;
    margin-bottom: 8px;
  }
  .l-main-visual__inner__image {
    margin: 0 0 0 17.0666666667%;
    height: 140px;
  }
}

.l-column-side {
  width: 25%;
  order: 0;
}
@media screen and (max-width: 800px) {
  .l-column-side {
    width: 100%;
    order: 1;
    margin-top: 16px;
  }
}

.l-column-main {
  width: 73.3333333333%;
  order: 1;
}
@media screen and (max-width: 800px) {
  .l-column-main {
    width: 100%;
    order: 0;
  }
}

.c-only.-pc {
  display: block;
}
@media screen and (max-width: 800px) {
  .c-only.-pc {
    display: none;
  }
}
.c-only.-sp {
  display: none;
}
@media screen and (max-width: 800px) {
  .c-only.-sp {
    display: block;
  }
}

.c-heading-lv2 {
  font-size: 4.4rem;
  font-weight: 700;
  color: #002660;
  text-align: center;
  padding: 80px 0;
}
.c-heading-lv2.-white {
  color: #fff;
}
.c-heading-lv2.-narrow {
  padding-bottom: 40px;
}
@media screen and (max-width: 800px) {
  .c-heading-lv2 {
    font-size: 2.4rem;
    padding: 32px 0;
  }
  .c-heading-lv2.-narrow {
    padding: 56px 0 32px 0;
  }
  .c-heading-lv2.-sp-tall {
    padding: 62px 0;
  }
}

.c-heading-lv3 {
  font-size: 2.8rem;
  font-weight: 700;
  color: #002660;
  text-align: center;
  background-color: #E5EEF7;
  padding: 8px 16px;
}
.c-heading-lv3.-left {
  text-align: left;
}
@media screen and (max-width: 800px) {
  .c-heading-lv3 {
    font-size: 1.8rem;
    padding: 8px 12px;
  }
}

.c-heading-lv4 {
  font-size: 2.2rem;
  font-weight: 700;
}
.c-heading-lv4.-left-border {
  border-left: 6px solid #005AB4;
  padding: 3px 0 3px 16px;
}
@media screen and (max-width: 800px) {
  .c-heading-lv4 {
    font-size: 1.7rem;
  }
  .c-heading-lv4.-left-border {
    border-left-width: 5px;
    padding: 2px 0 2px 12px;
  }
}

.c-heading-lv5 {
  color: #002660;
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (max-width: 800px) {
  .c-heading-lv5 {
    font-size: 1.6rem;
  }
}

.c-heading-regist {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  padding: 24px 32px;
  color: #002660;
  font-weight: 700;
  background-color: #E5EEF7;
}
.c-heading-regist::after {
  display: block;
  position: absolute;
  content: "";
  right: -400px;
  top: 0;
  width: 400px;
  height: 100%;
  background-color: #E5EEF7;
}
.c-heading-regist .c-heading__series {
  width: 100%;
  font-size: 2.8rem;
}
.c-heading-regist .c-heading__icon {
  width: 100%;
  font-weight: normal;
  order: -1;
}
.c-heading-regist .c-heading__name {
  width: 100%;
  font-size: 4rem;
}
@media screen and (max-width: 800px) {
  .c-heading-regist {
    padding: 16px;
  }
  .c-heading-regist .c-heading__series {
    font-size: 2rem;
  }
  .c-heading-regist .c-heading__name {
    font-size: 2.4rem;
  }
}

.c-heading-panel {
  font-size: 1.6rem;
  font-weight: 700;
  color: #002660;
  text-align: center;
  line-height: 1.2;
  letter-spacing: 0;
}
@media screen and (max-width: 800px) {
  .c-heading-panel {
    font-size: 1.4rem;
  }
}

.c-first-box {
  margin: 64px auto;
  max-width: 1200px;
  text-align: center;
  font-size: 2rem;
  line-height: 2;
}
@media screen and (max-width: 1200px) {
  .c-first-box {
    padding: 0 16px;
  }
}
@media screen and (max-width: 800px) {
  .c-first-box {
    text-align: left;
    font-size: 1.4rem;
    margin: 16px auto;
  }
}

.c-cover {
  margin: 0;
  position: relative;
}
.c-cover.-accent {
  background-color: #002660;
  background: linear-gradient(to right, #002660 0%, #005AB4 100%);
}
.c-cover.-light {
  background-color: #E5EEF7;
}
.c-cover.-gray {
  background-color: #f5f5f5;
}
.c-cover.-margin {
  margin: 100px 0;
}
@media screen and (max-width: 800px) {
  .c-cover.-margin {
    margin: 60px 0;
  }
}
.c-cover.-margin-top {
  margin-top: 100px;
}
@media screen and (max-width: 800px) {
  .c-cover.-margin-top {
    margin-top: 60px;
  }
}
.c-cover.-margin-bottom {
  margin-bottom: 100px;
}
@media screen and (max-width: 800px) {
  .c-cover.-margin-bottom {
    margin-bottom: 60px;
  }
}
.c-cover.-padding-top {
  padding-top: 80px;
}
@media screen and (max-width: 800px) {
  .c-cover.-padding-top {
    padding-top: 40px;
  }
}
.c-cover.-padding-bottom {
  padding-bottom: 80px;
}
@media screen and (max-width: 800px) {
  .c-cover.-padding-bottom {
    padding-bottom: 40px;
  }
}
.c-cover__header {
  position: relative;
}
.c-cover__header::before {
  display: block;
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  height: 440px;
  width: 100%;
  z-index: -1;
}
@media screen and (max-width: 800px) {
  .c-cover__header::before {
    height: 240px;
  }
}
@media screen and (min-width: 801px) {
  .c-cover__header.-sub::before {
    height: 360px;
  }
}
.c-cover__header.-accent, .c-cover__header.-accent::before {
  background-color: #002660;
  background: linear-gradient(to right, #002660 0%, #005AB4 100%);
}
.c-cover__header.-gray, .c-cover__header.-gray::before {
  background-color: #f5f5f5;
}
.c-cover__header.-light, .c-cover__header.-light::before {
  background-color: #E5EEF7;
}
.c-cover__header.-padding-top {
  padding-top: 80px;
}
@media screen and (max-width: 800px) {
  .c-cover__header.-padding-top {
    padding-top: 40px;
  }
}
.c-cover__header__inner {
  position: relative;
  overflow: hidden;
}
.c-cover__detail {
  position: relative;
}
@media screen and (max-width: 800px) {
  .c-cover__header {
    padding-right: 8px;
    padding-left: 8px;
  }
}

.c-letters-decorative {
  font-family: "Oswald", sans-serif;
  font-size: 14.4rem;
  font-weight: normal;
  line-height: 1;
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  letter-spacing: 0.01em;
  text-align: right;
  width: 100%;
  height: 300px;
  overflow: hidden;
  pointer-events: none;
}
.c-letters-decorative > .inner {
  display: block;
  margin-right: -0.075em;
  margin-top: -0.15em;
}
.c-letters-decorative.-white {
  color: rgba(255, 255, 255, 0.1);
}
.c-letters-decorative.-light {
  color: rgba(0, 91, 172, 0.1);
}
.c-letters-decorative.-center {
  text-align: center;
}
.c-letters-decorative.-left {
  text-align: left;
}
.c-letters-decorative.-left > .inner {
  margin-right: auto;
  margin-left: -0.075em;
}
.c-letters-decorative.-bottom {
  top: 90px;
}
.c-letters-decorative.-bottom > .inner {
  margin-top: 0;
}
@media screen and (max-width: 800px) {
  .c-letters-decorative {
    font-size: 6.2rem;
  }
  .c-letters-decorative > .inner {
    margin-right: -0.05em;
  }
  .c-letters-decorative.-center {
    font-size: 8.8rem;
    line-height: 0.82;
  }
  .c-letters-decorative.-center.-sp-2line {
    font-size: 5.9rem;
    width: 100%;
    top: 0;
  }
  .c-letters-decorative.-center .sp-left {
    display: block;
    text-align: left;
  }
  .c-letters-decorative.-center .sp-right {
    text-align: right;
    display: block;
  }
  .c-letters-decorative.-bottom {
    top: 86px;
  }
}

.c-wrapper {
  max-width: 1200px;
  margin: 0 auto;
}
.c-wrapper__inner {
  background-color: #fff;
  padding: 64px 80px 80px 80px;
}
.c-wrapper__footer {
  margin: 40px 0 80px 0;
}
@media screen and (max-width: 800px) {
  .c-wrapper {
    padding: 0 16px;
  }
  .c-wrapper__inner {
    padding: 16px 12px 24px 12px;
  }
  .c-wrapper__footer {
    margin: 24px 16px 40px 16px;
  }
}

.c-content-cover {
  position: relative;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .c-content-cover {
    padding-right: 16px;
    padding-left: 16px;
  }
}
.c-content-cover > .item-box {
  position: relative;
}
.c-content-cover.-light {
  background-color: #E5EEF7;
  padding: 32px;
}
.c-content-cover.-margin {
  margin: 56px auto;
}
@media screen and (min-width: 801px) {
  .c-content-cover.-has-column {
    margin-right: -8px;
    margin-left: -8px;
    display: flex;
  }
  .c-content-cover.-has-column > .item-box {
    margin: 0 8px;
  }
  .c-content-cover.-has-column > .item-box.-half {
    width: calc(50% - 16px);
  }
}
@media screen and (max-width: 800px) {
  .c-content-cover > .item-box {
    margin-top: 16px;
  }
  .c-content-cover.-margin {
    margin: 24px auto;
  }
}

p + .c-content-cover {
  margin-top: 64px;
}
@media screen and (max-width: 800px) {
  p + .c-content-cover {
    margin-top: 32px;
  }
}

.c-content-box {
  margin: 32px 16px 64px 16px;
}
.c-content-box.-light {
  background-color: #E5EEF7;
  padding: 24px;
}
@media screen and (max-width: 800px) {
  .c-content-box {
    margin: 16px 0px 32px 0px;
  }
}

.c-content-box-sub {
  margin-top: 16px;
  margin-bottom: 40px;
}
.c-content-box-sub:first-child {
  margin-top: 0;
}
@media screen and (max-width: 800px) {
  .c-content-box-sub {
    margin-top: 16px;
    margin-bottom: 24px;
  }
  .c-content-box-sub:first-child {
    margin-top: 0;
  }
}

.c-column-box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.c-column-box > .item-box {
  width: calc(50% - 20px);
  position: relative;
}
.c-column-box > .item-box:not(:first-child, :nth-child(2)) {
  margin-top: 40px;
}
.c-column-box > .item-box.-self-center {
  align-self: center;
}
.c-column-box > .item-box.-step-img {
  width: 250px;
}
@media screen and (max-width: 800px) {
  .c-column-box > .item-box.-step-img {
    width: calc(50% - 8px);
  }
}
.c-column-box > .item-box.-step-txt {
  width: calc(100% - 290px);
  align-self: center;
}
@media screen and (max-width: 800px) {
  .c-column-box > .item-box.-step-txt {
    margin-top: -5px !important;
    width: 50%;
  }
}
@media screen and (max-width: 800px) {
  .c-column-box > .item-box {
    width: 100%;
  }
  .c-column-box > .item-box + .item-box {
    margin-top: 8px;
  }
}
.c-column-box.-size-small > .item-box {
  width: calc(50% - 3px);
}
@media screen and (min-width: 801px) {
  .c-column-box.-three-column > .item-box {
    width: calc(33.3333333333% - 20px);
    position: relative;
  }
  .c-column-box.-three-column > .item-box:nth-child(3) {
    margin-top: 0;
  }
}
@media screen and (max-width: 800px) {
  .c-column-box.-three-column > .item-box {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
  }
}

.c-aside-box {
  background-color: #f5f5f5;
  padding: 24px 32px 32px 32px;
  margin: 32px 0;
}
@media screen and (max-width: 800px) {
  .c-aside-box {
    padding: 8px 16px;
    margin: 24px 0;
  }
}

aside:last-child .c-aside-box {
  margin-bottom: 0;
}

@media screen and (min-width: 801px) {
  .item-box .c-aside-box {
    margin: 0;
    padding: 16px;
  }
}
.c-content-emphasis-box {
  font-size: 1.8rem;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 800px) {
  .c-content-emphasis-box {
    font-size: 1.6rem;
  }
}

.c-image-box {
  margin: 40px 0;
}
@media screen and (max-width: 800px) {
  .c-image-box {
    margin: 24px 0;
  }
}

.c-table-box {
  margin-bottom: 40px;
}
.c-table-box:not(:first-child) {
  margin-top: 40px;
}
@media screen and (max-width: 800px) {
  .c-table-box:not(:first-child) {
    margin-top: 24px;
  }
}
@media screen and (max-width: 800px) {
  .c-table-box {
    margin-bottom: 24px;
  }
}

.c-button-box {
  max-width: 360px;
}
.c-button-box.-margin {
  margin-top: 40px;
}
@media screen and (max-width: 800px) {
  .c-button-box.-margin {
    margin-top: 24px;
  }
}
.c-button-box.-center {
  margin-right: auto;
  margin-left: auto;
}
.c-button-box.-center .c-button {
  margin-right: auto;
  margin-left: auto;
}
.c-button-box.-max {
  max-width: 100%;
}
.c-button-box > .item-box:only-child {
  max-width: 49.4230769231%;
}
.c-button-box.is-has-column {
  margin-right: -16px;
  margin-left: -16px;
  width: calc(100% + 32px);
  max-width: calc(100% + 32px);
  display: flex;
  justify-content: space-around;
}
.c-button-box.is-has-column > .item-box {
  width: 100%;
  margin: 0 16px;
}
.c-button-box.is-has-column > .item-box .c-button {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 800px) {
  .c-button-box {
    width: 100%;
    max-width: 100%;
  }
  .c-button-box.is-has-column {
    display: block;
    margin-right: 0;
    margin-left: 0;
  }
  .c-button-box.is-has-column > .item-box {
    margin: 0;
  }
  .c-button-box.is-has-column > .item-box + .item-box {
    margin-top: 8px;
  }
}

.c-share-box {
  background-color: #fff;
  padding: 40px 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
}
.c-share-box__title {
  font-size: 4.4rem;
  width: auto;
}
.c-share-box__list {
  display: flex;
  justify-content: flex-start;
}
.c-share-box__list > li {
  margin-left: 40px;
  width: 80px;
  height: 80px;
}
@media screen and (max-width: 800px) {
  .c-share-box {
    padding: 24px 0;
  }
  .c-share-box__title {
    font-size: 3.2rem;
  }
  .c-share-box__list {
    justify-content: flex-start;
  }
  .c-share-box__list > li {
    margin-left: 20px;
    width: 56px;
    height: 56px;
  }
}

.c-button {
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  font-weight: 700;
  font-size: 1.8rem;
  position: relative;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 800px) {
  .c-button {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 801px) {
  .c-button:hover {
    background-color: rgba(0, 91, 172, 0.1);
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.24);
    opacity: 0.9;
  }
}
.c-button.-type-arrow {
  border: 2px #002660 solid;
  color: #002660;
  padding-top: 14px;
  padding-bottom: 17px;
}
@media screen and (max-width: 800px) {
  .c-button.-type-arrow {
    width: 100%;
  }
}
.c-button.-type-arrow.-short {
  padding-top: 10px;
  padding-bottom: 12px;
}
.c-button.-type-arrow.-white {
  color: #fff;
  border-color: #fff;
}
@media screen and (max-width: 800px) {
  .c-button.-type-arrow.-arrow-left, .c-button.-type-arrow.-arrow-right {
    width: calc(100% - 10px);
  }
}
.c-button.-type-arrow.-arrow-left::after, .c-button.-type-arrow.-arrow-right::after {
  position: absolute;
  content: "";
  display: block;
  width: 42px;
  height: 12px;
  background-size: 42px 12px;
  background-repeat: no-repeat;
  background-position: left top;
  bottom: 50%;
}
@media screen and (max-width: 800px) {
  .c-button.-type-arrow.-arrow-right {
    margin-right: 10px !important;
  }
}
.c-button.-type-arrow.-arrow-right::after {
  background-image: url(/assets/img/common/icon_arrow-right-navy.svg);
  right: -21px;
}
.c-button.-type-arrow.-arrow-right.-white::after {
  background-image: url(/assets/img/common/icon_arrow-right-white.svg);
}
.c-button.-type-arrow.-arrow-right.-white:hover {
  background-color: rgba(255, 255, 255, 0.1);
}
@media screen and (min-width: 801px) {
  .c-button.-type-arrow.-arrow-right:hover::after {
    right: -29px;
  }
}
.c-button.-type-arrow.-arrow-left {
  margin-left: 16px;
}
.c-button.-type-arrow.-arrow-left::after {
  background: url(/assets/img/common/icon_arrow-left-navy.svg);
  left: -21px;
}
@media screen and (max-width: 800px) {
  .c-button.-type-arrow.-arrow-left {
    margin-left: 10px !important;
  }
}
.c-button.-type-arrow.-arrow-bottom::after {
  position: absolute;
  content: "";
  display: block;
  right: 16px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #002660;
  border-right: 2px solid #002660;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
.c-button.-type-beta {
  background-color: #002660;
  color: #fff;
  width: 100%;
  max-width: 500px;
  height: 80px;
}
@media screen and (max-width: 800px) {
  .c-button.-type-beta {
    width: 100%;
    height: 60px;
  }
  .c-button.-type-beta + .c-button.-type-beta {
    margin-top: 8px;
  }
}
.c-button.-type-beta > span:not(.supplement, .c-icon-image) {
  display: inline-block;
  padding: 4px 4px 4px 56px;
  background-size: 40px 40px;
  background-position: left center;
  background-repeat: no-repeat;
  margin-right: 12px;
}
.c-button.-type-beta > .supplement {
  font-weight: normal;
  font-size: 1.4rem;
}
.c-button.-type-beta.-vivid {
  background-color: #005AE1;
}
.c-button.-type-beta.-gradation {
  background-color: #002660;
  background: linear-gradient(to right, #002660 0%, #005AB4 100%);
}
.c-button.-type-beta.-small {
  font-size: 1.6rem;
  height: 60px;
}
@media screen and (max-width: 800px) {
  .c-button.-type-beta.-small {
    font-size: 1.4rem;
  }
}
.c-button.-icon-mail > span:not(.supplement) {
  background-image: url("/assets/img/common/icon_mail-white.svg");
}
.c-button.-icon-download > span:not(.supplement) {
  background-image: url("/assets/img/common/icon_download-white.svg");
}
.c-button.-icon-simulation > span:not(.supplement) {
  background-image: url("/assets/img/common/icon_simulation-white.svg");
}
.c-button.-icon-modal::after {
  content: "";
  display: block;
  position: absolute;
  width: 24px;
  height: 24px;
  background: transparent url(/assets/img/common/icon_modal.svg) left top no-repeat;
  background-size: 24px 24px;
  top: 8px;
  right: 8px;
}
.c-button.-type-small {
  color: #002660;
  display: inline-block;
  font-size: 1.4rem;
  color: #005AB4;
  padding: 6px 30px 6px 10px;
  background: #E5EEF7 url(/assets/img/common/icon_arrow-mini-right-blue.svg) calc(100% - 8px) 8px no-repeat;
  background-size: 14px 7px;
  line-height: 1;
}
@media screen and (min-width: 801px) {
  .c-button.-type-small:hover {
    background-position: calc(100% - 4px) 8px;
    background-color: #C5E2F2;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
  }
}
.c-button.-type-small.-icon-blank {
  background: #E5EEF7 url(/assets/img/common/icon_blank-blue.svg) calc(100% - 8px) center no-repeat;
  background-size: 20px auto;
}
.c-button.-type-minimum {
  font-size: 1.4rem;
  display: inline-block;
  line-height: 1.2;
  border: 2px #002660 solid;
  color: #002660;
  padding: 5px 16px 6px 16px;
}
.c-button.-type-minimum.-icon-print {
  background: url("/assets/img/common/icon_print-navy.svg") 12px center no-repeat;
  background-size: 18px 17px;
  padding: 5px 16px 6px 40px;
}
.c-button.-type-minimum.-icon-blank {
  background: url("/assets/img/common/icon_blank-navy.svg") calc(100% - 8px) center no-repeat;
  background-size: 20px auto;
  padding: 5px 32px 6px 16px;
}
@media screen and (max-width: 800px) {
  .c-button.-type-minimum {
    font-size: 1.2rem;
    padding: 2px 8px 4px 8px;
  }
  .c-button.-type-minimum.-icon-print {
    background-position: 4px center;
    background-size: 16px auto;
    padding: 2px 8px 4px 24px;
  }
  .c-button.-type-minimum.-icon-blank {
    background-position: calc(100% - 4px) center;
    background-size: 12px auto;
    padding: 2px 20px 4px 8px;
  }
}

.c-button.-color-light {
  background-color: #E5EEF7;
  padding: 8px 12px;
  font-size: 1.4rem;
}
.c-button.-icon-arrow-right {
  background-image: url(/assets/img/common/icon_arrow-mini-right-blue.svg);
  background-position: calc(100% - 12px);
  background-repeat: no-repeat;
  background-size: 14px 7px;
}

.c-label-icon {
  display: inline-block;
  font-size: 1.2rem;
  border: 1px #002660 solid;
  padding: 2px 4px 3px 4px;
  margin-right: 3px;
  margin-bottom: 3px;
  line-height: 1.1;
  font-weight: 400;
  text-align: center;
}
@media screen and (max-width: 800px) {
  .c-label-icon {
    margin: 0;
    font-size: 1rem;
  }
}
.c-label-icon.-blue {
  background-color: #005AB4;
  color: #fff;
  border-color: #005AB4;
}
.c-label-icon.-white {
  background-color: #fff;
  color: #005AB4;
  border-color: #005AB4;
}
.c-label-icon.-light-blue {
  background-color: #C5E2F2;
  color: #005AB4;
  border-color: #C5E2F2;
}
.c-label-icon.-smoke-blue {
  background-color: #5690B1;
  color: #fff;
  border-color: #5690B1;
}
.c-label-icon.-orange {
  border-color: #DE883C;
  color: #DE883C;
}
.c-label-icon.-red {
  border-color: #AC0000;
  background-color: #AC0000;
  color: #fff;
  font-weight: 700;
}
.c-label-icon.-step {
  font-size: 1.4rem;
  font-weight: 700;
  border-color: #fff;
  color: #fff;
  min-width: 100px;
}
@media screen and (max-width: 800px) {
  .c-label-icon.-step {
    padding: 2px;
    font-size: 1rem;
    min-width: 0;
  }
}
.c-label-icon.-tag {
  background-color: #eee;
  color: #666;
  border-color: #eee;
}
@media screen and (min-width: 801px) {
  .c-label-icon.-tag {
    margin-right: 1px;
  }
}

.c-label-tag {
  display: inline-block;
  font-size: 1.2rem;
  margin-right: 3px;
  margin-bottom: 2px;
  line-height: 1.1;
  color: #666;
}

.c-icon {
  display: block;
  position: relative;
}
.c-icon::before, .c-icon::after {
  display: block;
  content: "";
  position: absolute;
}
.c-icon.-accordion::after {
  right: 16px;
  top: 50%;
  margin-top: -6px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #005AB4;
  border-right: 2px solid #005AB4;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
.c-icon.-accordion.is-active::after {
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}
@media screen and (min-width: 801px) {
  .c-icon.-pc-drop {
    padding-right: 20px;
  }
  .c-icon.-pc-drop::after {
    right: 16px;
    top: 50%;
    margin-top: -6px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #005AB4;
    border-right: 2px solid #005AB4;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .c-icon.-pc-drop.is-active::after {
    -webkit-transform: rotate(315deg);
            transform: rotate(315deg);
  }
}
@media screen and (max-width: 800px) {
  .c-icon.-pc-drop::after {
    display: none;
  }
}
.c-icon.-arrow::after {
  background: url("/assets/img/common/icon_arrow-mini-right-blue.svg") center center no-repeat;
  background-size: 14px 7px;
  width: 14px;
  height: 7px;
  right: 16px;
  top: 50%;
  margin-top: -4px;
}
.c-icon.-arrow.-white {
  color: #fff;
}
.c-icon.-arrow.-white::after {
  background-image: url("/assets/img/common/icon_arrow-mini-right-white.svg");
}
@media screen and (min-width: 801px) {
  .c-icon.-arrow:hover::after {
    right: 12px;
  }
}
@media screen and (max-width: 800px) {
  .c-icon.-arrow.-sp-white {
    color: #fff;
  }
  .c-icon.-arrow.-sp-white::after {
    background-image: url("/assets/img/common/icon_arrow-mini-right-white.svg");
  }
}
.c-icon.-search {
  display: flex;
}
.c-icon.-search::before {
  background: transparent url("/assets/img/common/icon_search.svg") left top no-repeat;
  width: 29px;
  height: 29px;
  left: 24px;
  top: calc(50% - 14px);
}

.c-image-label-icon {
  display: block;
  position: absolute;
  padding: 4px 8px 6px 8px;
  line-height: 1.2;
  color: #fff;
  font-weight: 700;
  font-size: 1.8rem;
  background-color: #005AB4;
}
@media screen and (max-width: 800px) {
  .c-image-label-icon {
    font-size: 1.5rem;
    padding: 2px 4px 4px 4px;
  }
}

.c-anchor-link-icon {
  position: relative;
}
.c-anchor-link-icon::before {
  display: block;
  position: absolute;
  content: "";
  left: 50%;
  bottom: 10px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  margin-left: -4px;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
@media screen and (max-width: 800px) {
  .c-anchor-link-icon::before {
    border-width: 1.5px;
  }
}
.c-anchor-link-icon:hover:before {
  bottom: 6px;
}

.c-icon-image {
  margin: 0 4px;
}
.c-icon-image img {
  width: 30px;
  height: 30px;
  vertical-align: middle;
  display: inline-block !important;
}
.c-icon-image.-size-mini {
  margin: 0;
}
.c-icon-image.-size-mini img {
  width: 20px;
  height: 20px;
}
@media screen and (max-width: 800px) {
  .c-icon-image img {
    width: 24px;
    height: 24px;
  }
}

.c-link-icon {
  display: inline-block;
}
.c-link-icon img {
  width: 20px;
  height: auto;
  vertical-align: middle;
  margin-top: -2px;
}
@media screen and (max-width: 800px) {
  .c-link-icon img {
    width: 13px;
  }
}

.c-list:not(:first-child) {
  margin-top: 16px;
}
.c-list:not(:last-child) {
  margin-bottom: 16px;
}
.c-list > li {
  position: relative;
  margin-left: 1.5em;
  line-height: 1.6;
}
.c-list > li:not(:last-child) {
  margin-bottom: 16px;
}
.c-list > li::before {
  position: absolute;
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  background-color: #222;
  top: 0.75em;
  left: -1em;
}
.c-list > li.is-dot-navy::before {
  background-color: #002660;
}
.c-list > li.is-dot-blue::before {
  background-color: #005AB4;
}
.c-list.-inline-block > li {
  display: inline-block;
  margin-right: 16px;
}
@media screen and (max-width: 800px) {
  .c-list.-inline-block > li {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }
}
.c-list.-flexbox {
  display: flex;
  flex-wrap: wrap;
  margin-right: -24px;
}
.c-list.-flexbox > li {
  width: calc(25% - 24px - 1.5em);
  margin-right: 24px;
}
@media screen and (max-width: 800px) {
  .c-list.-flexbox {
    margin-right: -12px;
  }
  .c-list.-flexbox > li {
    width: calc(50% - 12px - 1.5em);
    margin-right: 12px;
  }
}

.c-number-list {
  margin-left: 8px;
}
.c-number-list:not(:first-child) {
  margin-top: 16px;
}
.c-number-list:not(:last-child) {
  margin-bottom: 16px;
}
.c-number-list > li {
  list-style-type: decimal;
  margin-left: 16px;
}
.c-number-list > li:not(:first-child) {
  margin-top: 8px;
}
.c-number-list > li:not(:last-child) {
  margin-top: 8px;
}

.c-number-list-sub {
  list-style-type: none;
}
.c-number-list-sub > li {
  counter-increment: cnt;
  display: flex;
}
.c-number-list-sub > li::before {
  content: "(" counter(cnt) ")";
  display: inline-block;
  margin-right: 8px;
}

.c-accent-list {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  margin: 0 -8px;
}
.c-accent-list > li {
  margin: 0 8px;
  padding: 32px 8px;
  width: 100%;
  text-align: center;
  background-color: #EEF9FC;
  min-height: 136px;
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  flex-wrap: wrap;
  line-height: 1.6;
}
.c-accent-list > li > .text {
  width: 100%;
  font-size: 2.2rem;
  font-weight: 700;
  color: #002660;
  margin: 8px 0;
}
.c-accent-list > li.is-bg-pink {
  background-color: #F8EEEF;
}
@media screen and (max-width: 800px) {
  .c-accent-list {
    margin: 0;
    flex-wrap: wrap;
  }
  .c-accent-list > li {
    margin: 4px 0;
    padding: 8px 4px;
    min-height: 0;
  }
  .c-accent-list > li > .text {
    width: 100%;
    font-size: 1.8rem;
    margin: 8px 0;
  }
}

.c-news-list {
  margin: -2px 0;
}
.c-news-list > li {
  margin: 2px 0;
}
.c-news-list > li .box {
  background: #fff url("/assets/img/common/icon_arrow-mini-right-blue.svg") calc(100% - 24px) center no-repeat;
  background-size: 14px 7px;
  display: flex;
  flex-wrap: wrap;
  color: #222;
  padding: 24px 40px;
  line-height: 1.4;
}
@media screen and (min-width: 801px) {
  .c-news-list > li .box:hover {
    background-position: calc(100% - 20px) center;
  }
}
.c-news-list > li .box > .date {
  font-size: 1.4rem;
  font-family: "Oswald", sans-serif;
  width: 100px;
}
.c-news-list > li .box > .title {
  width: calc(100% - 100px);
}
.c-news-list > li .box > .title > .ico {
  margin: 8px 0 -3px 0;
}
@media screen and (max-width: 800px) {
  .c-news-list > li .box {
    background-position: calc(100% - 14px) center;
    padding: 16px 36px 16px 16px;
  }
  .c-news-list > li .box > .date {
    width: 100%;
    margin-bottom: 2px;
  }
  .c-news-list > li .box > .title {
    width: 100%;
  }
}

table {
  height: auto !important;
  border-collapse: separate !important;
  border-spacing: 1px !important;
  line-height: 1.6;
}
table.-max {
  width: 100%;
  max-width: 100%;
}
table tr {
  height: auto !important;
}
table th, table td {
  border: 1px #999 solid;
  padding: 16px;
  height: auto !important;
  position: relative;
}
table th {
  font-weight: 700;
  background-color: #f5f5f5;
  vertical-align: top;
}
table th .icon-box {
  position: absolute;
  right: 16px;
  top: 12px;
}

.c-table-basic th {
  width: 24%;
}
.c-table-basic.-color-light {
  border-color: #5690B1;
}
.c-table-basic.-color-light th, .c-table-basic.-color-light td {
  border-color: #5690B1;
}
.c-table-basic.-color-light th {
  background-color: #E5EEF7;
  text-align: left;
}
.c-table-basic .inner-table-cell {
  padding: 0;
}
.c-table-basic .inner-table {
  width: 100%;
  border-collapse: collapse;
  border: none;
}
.c-table-basic .inner-table tr:not(:last-child) th, .c-table-basic .inner-table tr:not(:last-child) td {
  border-bottom: 1px #D2D2D2 solid;
}
.c-table-basic .inner-table th, .c-table-basic .inner-table td {
  border: none;
}
.c-table-basic .inner-table th {
  text-align: left;
  width: 22%;
}
.c-table-basic .inner-table td {
  width: 78%;
}
.c-table-basic .inner-table td .button-box {
  position: absolute;
  top: 12px;
  right: 12px;
}
.c-table-basic .inner-table-div {
  display: flex;
  flex-wrap: wrap;
}
.c-table-basic .inner-table-div-th {
  font-weight: 700;
  width: 20%;
}
.c-table-basic .inner-table-div-th .u-text-small {
  display: inline-block;
}
.c-table-basic .inner-table-div-td {
  align-self: center;
  width: 80%;
}
@media screen and (max-width: 800px) {
  .c-table-basic {
    border-collapse: collapse !important;
  }
  .c-table-basic th, .c-table-basic td {
    display: block;
    width: 100%;
    padding: 12px 16px;
  }
  .c-table-basic th {
    border-bottom-color: #ccc;
  }
  .c-table-basic td {
    margin-top: -1px;
    margin-bottom: 1px;
    border-top-color: #ccc;
  }
  .c-table-basic .inner-table th, .c-table-basic .inner-table td {
    display: block;
    width: 100%;
    margin: 0;
  }
  .c-table-basic .inner-table th {
    border: none !important;
    padding: 4px 16px;
  }
  .c-table-basic .inner-table td .button-box {
    top: 0;
    right: 0;
  }
  .c-table-basic .inner-table-div {
    display: block;
  }
  .c-table-basic .inner-table-div-th, .c-table-basic .inner-table-div-td {
    display: block;
    width: 100%;
  }
}

.c-table-blue th, .c-table-blue td {
  border-color: #5690B1;
}
.c-table-blue th {
  color: #fff;
  background-color: #5690B1;
}
.c-table-blue .is-subtitle {
  background-color: #E5EEF7;
  color: #5690B1;
}

.c-table-red {
  border-color: #AC0000;
}
.c-table-red th, .c-table-red td {
  color: #AC0000;
}
.c-table-red th {
  background-color: #FFF3F3;
}

.c-anchor {
  margin: 64px auto 100px auto;
}
.c-anchor__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 -5px;
  font-size: 2.2rem;
  line-height: 1.4;
}
.c-anchor__list.-wrap-none {
  flex-wrap: nowrap;
}
.c-anchor__list.-wrap-none > li {
  width: 100%;
}
.c-anchor__list > li {
  margin: 8px 5px;
  width: 32.5%;
  height: 80px;
}
.c-anchor__list > li a {
  display: flex;
  padding-bottom: 10px;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  text-align: center;
  width: 100%;
  height: 100%;
  background-color: #002660;
  background: linear-gradient(to right, #002660 0%, #005AB4 100%);
  position: relative;
}
.c-anchor__list > li a::after {
  display: block;
  position: absolute;
  content: "";
  left: 50%;
  bottom: 8px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  margin-left: -3px;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
@media screen and (min-width: 801px) {
  .c-anchor__list > li a:hover {
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.24);
  }
  .c-anchor__list > li a:hover:after {
    bottom: 6px;
  }
}
@media screen and (max-width: 800px) {
  .c-anchor {
    margin: 24px auto;
  }
  .c-anchor__list {
    margin: 0 -4px;
    font-size: 1.4rem;
  }
  .c-anchor__list > li {
    margin: 4px;
    width: calc(33.3333333333% - 8px);
    height: 80px;
  }
  .c-anchor__list > li a::after {
    border-width: 1.5px;
  }
}

.c-anchor-mini {
  margin: 0 auto 64px auto;
}
.c-anchor-mini:not(:first-child) {
  margin-top: 40px;
}
.c-anchor-mini__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  margin: -4px;
  line-height: 1.4;
}
.c-anchor-mini__list.-wrap-none {
  flex-wrap: nowrap;
}
.c-anchor-mini__list.-wrap-none > li {
  width: 100%;
}
.c-anchor-mini__list > li {
  margin: 4px;
  width: 15.8653846154%;
  height: 50px;
}
.c-anchor-mini__list > li a {
  display: flex;
  padding-bottom: 10px;
  align-items: center;
  justify-content: center;
  color: #002660;
  font-weight: 700;
  text-align: center;
  width: 100%;
  height: 100%;
  background-color: #C5E2F2;
  background: linear-gradient(to right, #c5e2f2 0%, #e5eef7 100%);
  position: relative;
}
.c-anchor-mini__list > li a::after {
  display: block;
  position: absolute;
  content: "";
  left: 50%;
  bottom: 6px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #005AB4;
  border-right: 2px solid #005AB4;
  margin-left: -3px;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
@media screen and (min-width: 801px) {
  .c-anchor-mini__list > li a:hover {
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
  }
  .c-anchor-mini__list > li a:hover:after {
    bottom: 4px;
  }
}
@media screen and (max-width: 800px) {
  .c-anchor-mini {
    margin: 0 auto 24px auto;
  }
  .c-anchor-mini:not(:first-child) {
    margin-top: 24px;
  }
  .c-anchor-mini__list {
    margin: 0 -4px;
    font-size: 1.4rem;
  }
  .c-anchor-mini__list > li {
    margin: 4px;
    width: calc(33.3333333333% - 8px);
    height: 80px;
  }
  .c-anchor-mini__list > li a::after {
    border-width: 1.5px;
  }
}

.c-flow {
  margin: 40px 0;
}
.c-flow__list {
  display: flex;
  height: 145px;
  width: calc(100% - 30px);
}
.c-flow__list > li {
  width: 100%;
  height: 100%;
}
.c-flow__list > li > .box {
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  padding-top: 24px;
  width: 100%;
  height: 100%;
  text-align: center;
}
.c-flow__list > li > .box::after {
  display: block;
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  top: 0;
  right: -30px;
  border-style: solid;
  border-width: 72.5px 0 72.5px 30px;
  border-color: transparent transparent transparent #000;
  border-left-color: inherit;
  z-index: 1;
}
.c-flow__list > li .c-label-icon {
  display: block;
  margin: 0 auto;
}
.c-flow__list > li .text {
  font-size: 2.2rem;
  font-weight: 700;
  color: #fff;
  margin: 22px 0 0 0;
  line-height: 1.3;
}
.c-flow__list > li .text.-has-2line {
  margin-top: 10px;
}
.c-flow__list > li:not(:first-child) > .box {
  padding-left: 30px;
}
.c-flow__list > li:not(:first-child) > .box::before {
  margin-left: 11px;
}
.c-flow__list > li:first-child > .box {
  background-color: #217DD9;
  border-color: #217DD9;
}
.c-flow__list > li:nth-child(2) > .box {
  background-color: #105EB4;
  border-color: #105EB4;
}
.c-flow__list > li:nth-child(3) > .box {
  background-color: #0648A1;
  border-color: #0648A1;
}
.c-flow__list > li:nth-last-child(2) > .box {
  background-color: #043980;
  border-color: #043980;
}
.c-flow__list > li:last-child > .box {
  background-color: #001E4A;
  border-color: #001E4A;
}
@media screen and (max-width: 800px) {
  .c-flow {
    margin: 24px 0;
  }
  .c-flow__list {
    height: 100px;
    width: calc(100% - 15px);
  }
  .c-flow__list > li {
    width: 100%;
    height: 100%;
  }
  .c-flow__list > li > .box {
    padding-top: 16px;
    padding-left: 12px;
  }
  .c-flow__list > li > .box::after {
    right: -15px;
    border-width: 50px 0 50px 15px;
  }
  .c-flow__list > li .text {
    font-size: 1.1rem;
    margin: 8px 0;
    line-height: 1.2;
  }
  .c-flow__list > li:not(:first-child) > .box {
    padding-left: 15px;
  }
  .c-flow__list > li:not(:first-child) > .box::before {
    margin-left: 4px;
  }
  .c-flow__list > li:first-child > .box {
    margin-right: -15px;
  }
}

.c-category-list {
  font-weight: 700;
}
.c-category-list > li {
  margin: 0 0 2px 0;
}
.c-category-list > li.category > span {
  background-color: #E5EEF7;
  color: #002660;
  display: block;
  font-size: 1.8rem;
  padding: 16px;
}
.c-category-list > li .inner-list > li {
  margin: 0 0 2px 0;
}
.c-category-list > li .inner-list > li a {
  background-color: #fff;
  display: block;
  padding: 16px;
}
.c-category-list > li .inner-list > li a.is-current {
  background-color: #FFFEE9;
}
.c-category-list > li .inner-list.-border > li {
  border-bottom: 2px #f5f5f5 solid;
}
.c-category-list > li .inner-tag {
  background-color: #fff;
  padding: 16px 24px;
}
.c-category-list > li .inner-tag-list {
  margin-left: -12px;
  font-size: 0;
}
.c-category-list > li .inner-tag-list > li {
  display: inline-block;
  font-weight: 400;
  font-size: 1.5rem;
  margin: 2px 0 2px 12px;
}
.c-category-list > li .inner-tag-list > li a {
  color: #999;
}
.c-category-list > li .inner-tag-list > li a:hover {
  text-decoration: underline;
  opacity: 0.75;
}
@media screen and (max-width: 800px) {
  .c-category-list > li.category > span {
    font-size: 1.6rem;
    padding: 12px;
  }
  .c-category-list > li .inner-list > li a {
    padding: 12px;
  }
  .c-category-list > li .inner-list.-border > li {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 801px) {
  .c-category-list.is-two-column {
    display: flex;
    flex-wrap: wrap;
    margin: -20px 0;
  }
  .c-category-list.is-two-column > li {
    width: calc(50% - 40px);
    margin-top: 20px;
    margin-bottom: 20px;
  }
  .c-category-list.is-two-column > li.category > span {
    font-size: 2.2rem;
  }
  .c-category-list.is-two-column > li:nth-child(even) {
    margin-left: 40px;
  }
}
@media screen and (max-width: 800px) {
  .c-category-list.is-two-column > li .inner-list {
    margin-bottom: 8px;
  }
}

.c-heading-article {
  display: flex;
  flex-wrap: wrap;
}
.c-heading-article .c-heading__name {
  font-size: 3.2rem;
  font-weight: 700;
  border-bottom: 8px #E5EEF7 solid;
  padding: 8px 0 28px 0;
  order: 1;
  width: 100%;
}
.c-heading-article .c-heading__icon {
  order: 0;
  width: 100%;
}
.c-heading-article .c-heading__tag {
  order: 0;
  width: 100%;
}
.c-heading-article .c-heading__date {
  width: 100%;
  order: 2;
  text-align: right;
  font-family: "Oswald", sans-serif;
  margin-top: 16px;
}
@media screen and (max-width: 800px) {
  .c-heading-article .c-heading__name {
    font-size: 2.4rem;
    border-bottom-width: 4px;
    padding: 4px 0 16px 0;
  }
  .c-heading-article .c-heading__date {
    margin-top: 8px;
    font-size: 1.4rem;
  }
}

.c-article {
  padding: 32px 40px;
  background-color: #fff;
}
.c-article__detail {
  line-height: 2;
}
.c-article__detail .mokuji {
  margin: 40px 0;
  border: 2px #E5EEF7 solid;
  padding: 24px 24px 16px 24px;
}
.c-article__detail .mokuji__list {
  margin: 16px 0;
}
.c-article__detail .article {
  margin: 64px 0;
}
.c-article__detail .article.-first {
  margin-top: 40px;
}
.c-article__detail .article h1 {
  font-size: 2.8rem;
  margin-top: 64px;
}
.c-article__detail .article.is-column {
  margin-top: 8px;
}
.c-article__detail .article.is-column h1:first-child {
  margin-top: 0;
}
.c-article__detail .article__inner p {
  margin: 24px 0;
}
.c-article__detail .article__inner p::after {
  content: "";
  clear: both;
  display: block;
}
.c-article__detail .article__inner h2, .c-article__detail .article__inner h3, .c-article__detail .article__inner h4 {
  margin-top: 64px;
}
.c-article__detail .article__inner h2 {
  font-size: 2.2rem;
}
.c-article__detail .article__inner h3 {
  font-size: 1.8rem;
}
.c-article__detail .article__inner img {
  margin: 0 auto;
  height: auto;
  width: auto;
  max-width: 100%;
}
.c-article__detail .article__inner img[style*="float: left"] {
  margin-right: 30px;
  margin-bottom: 10px;
  max-width: calc(50% - 15px);
  height: auto;
  display: block;
}
.c-article__detail .article__inner span[style*="background-color: #ffffff"] {
  font-family: "Cormorant Upright", serif;
  font-style: italic;
  font-weight: 600;
  font-size: 150%;
}
.c-article__detail .article__inner iframe {
  display: block;
  margin: 40px auto;
}
.c-article__detail .article__inner blockquote {
  margin: 40px 0;
  color: #666666;
  border-left: #E9E9E9 4px solid;
  padding: 16px 0 16px 24px;
}
.c-article__detail .article__inner blockquote p:first-child {
  margin-top: 0;
}
.c-article__detail .article__inner blockquote p:last-child {
  margin-bottom: 0;
}
.c-article__detail .article__inner table {
  width: 100% !important;
}
.c-article__detail .article__inner table th, .c-article__detail .article__inner table td {
  padding: 6px;
  border-color: #5690B1;
}
.c-article__detail .article__inner table th iframe, .c-article__detail .article__inner table td iframe {
  margin: 16px 0;
}
.c-article__detail .article__inner table th img, .c-article__detail .article__inner table td img {
  margin: 16px 0;
}
.c-article__detail .article__inner table th {
  background-color: #E5EEF7;
}
.c-article__detail .article__inner table[border="0"] {
  border-spacing: 0 !important;
  border-collapse: collapse !important;
  border: none !important;
}
.c-article__detail .article__inner table[border="0"] th, .c-article__detail .article__inner table[border="0"] td {
  border: none !important;
  width: 50% !important;
  padding: 0;
  vertical-align: top;
}
.c-article__detail .article__inner table[border="0"] th:first-child, .c-article__detail .article__inner table[border="0"] td:first-child {
  padding-right: 16px;
}
.c-article__detail .article__inner table[border="0"] th:last-child, .c-article__detail .article__inner table[border="0"] td:last-child {
  padding-left: 16px;
}
.c-article__detail .article__inner table[border="0"] img {
  width: 100%;
}
.c-article__detail .article__inner table[border="0"] iframe {
  width: 100% !important;
}
.c-article__detail .article__inner ul {
  margin: 24px 0;
}
.c-article__detail .article__inner ul > li {
  position: relative;
  margin: 4px 1em;
  line-height: 1.6;
}
.c-article__detail .article__inner ul > li::before {
  position: absolute;
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  background-color: #222;
  top: 0.75em;
  left: -0.75em;
}
.c-article__detail .article__inner ol {
  margin: 24px 0;
}
.c-article__detail .article__inner ol > li {
  position: relative;
  margin: 4px 1em;
  line-height: 1.6;
  list-style-type: decimal;
}
.c-article__detail .article__inner a {
  color: #005AB4;
  text-decoration: underline;
}
.c-article__detail .article__inner a:hover {
  text-decoration: none;
}
.c-article__detail .article__inner a[target=_blank] {
  display: inline-block;
}
.c-article__detail .article__inner a[target=_blank]::after {
  content: "";
  background: url("/assets/img/common/icon_blank-blue.svg") center center no-repeat;
  background-size: 20px auto;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px 0 2px;
  vertical-align: middle;
}
.c-article__detail .button__inner {
  width: 240px;
  margin: 0 auto;
}
@media screen and (max-width: 800px) {
  .c-article__list ul > li {
    margin: 0 0 2px 0;
  }
  .c-article__list ul > li.category > span {
    font-size: inherit;
    padding: 16px;
  }
  .c-article__list ul > li .category__inner > li {
    margin: 0 0 2px 0;
  }
  .c-article__list ul > li .category__inner > li a {
    background-color: #fff;
    display: block;
    padding: 16px;
  }
  .c-article__detail {
    font-size: 1.4rem;
    padding-bottom: 32px;
  }
  .c-article__detail .mokuji {
    margin: 24px 0;
    padding: 16px 16px 8px 16px;
  }
  .c-article__detail .mokuji__list {
    margin: 8px 0;
  }
  .c-article__detail .article {
    margin: 24px 0 32px 0;
  }
  .c-article__detail .article.-first {
    margin-top: 24px;
  }
  .c-article__detail .article h1 {
    font-size: 2rem;
    margin-top: 24px;
  }
  .c-article__detail .article__inner mjx-container[jax=SVG] > svg {
    max-width: 100%;
  }
  .c-article__detail .article__inner p {
    margin: 32px 0;
  }
  .c-article__detail .article__inner h2, .c-article__detail .article__inner h3, .c-article__detail .article__inner h4 {
    margin-top: 32px;
  }
  .c-article__detail .article__inner h2 + p, .c-article__detail .article__inner h3 + p, .c-article__detail .article__inner h4 + p {
    margin-top: 16px;
  }
  .c-article__detail .article__inner h2 {
    font-size: 1.8rem;
  }
  .c-article__detail .article__inner h3 {
    font-size: 1.6rem;
  }
  .c-article__detail .article__inner img {
    margin: 0 auto;
  }
  .c-article__detail .article__inner img[style*="float: left"] {
    margin: 0 16px 8px 0;
  }
  .c-article__detail .article__inner iframe {
    width: 100%;
    display: block;
    margin: 32px auto;
  }
  .c-article__detail .article__inner blockquote {
    padding: 12px 0 12px 16px;
  }
  .c-article__detail .article__inner table {
    width: 100% !important;
  }
  .c-article__detail .article__inner table.is-table-b th, .c-article__detail .article__inner table.is-table-b td {
    display: block;
  }
  .c-article__detail .article__inner table.is-table-b th {
    border-bottom: 0;
  }
  .c-article__detail .article__inner table[border="0"] th, .c-article__detail .article__inner table[border="0"] td {
    display: block;
    width: 100% !important;
  }
  .c-article__detail .article__inner table[border="0"] th:first-child, .c-article__detail .article__inner table[border="0"] td:first-child {
    padding-right: 0px;
  }
  .c-article__detail .article__inner table[border="0"] th:last-child, .c-article__detail .article__inner table[border="0"] td:last-child {
    padding-left: 0px;
  }
  .c-article__detail .article__inner ul {
    margin: 32px 0;
  }
  .c-article__detail .article__inner ol {
    margin: 32px 0;
  }
  .c-article__detail .article__inner a[target=_blank]::after {
    background-size: 14px auto;
    width: 14px;
    height: 14px;
  }
}

.c-regist-style blockquote {
  margin: 20px 0;
  color: #666666;
  border-left: #E9E9E9 4px solid;
  padding: 16px 0 16px 24px;
}
.c-regist-style blockquote p {
  margin: 16px 0;
}
.c-regist-style blockquote p:first-child {
  margin-top: 0;
}
.c-regist-style blockquote p:last-child {
  margin-bottom: 0;
}
.c-regist-style ul {
  margin: 20px 0;
}
.c-regist-style ul > li {
  position: relative;
  margin: 4px 1em;
  line-height: 1.6;
}
.c-regist-style ul > li::before {
  position: absolute;
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  background-color: #222;
  top: 0.75em;
  left: -0.75em;
}
.c-regist-style ol {
  margin: 20px 0;
}
.c-regist-style ol > li {
  position: relative;
  margin: 4px 1em;
  line-height: 1.6;
  list-style-type: decimal;
}
.c-regist-style a {
  color: #005AB4;
  text-decoration: underline;
}
.c-regist-style a:hover {
  text-decoration: none;
}
.c-regist-style a[target=_blank] {
  display: inline-block;
}
.c-regist-style a[target=_blank]::after {
  content: "";
  background: url("/assets/img/common/icon_blank-blue.svg") center center no-repeat;
  background-size: 20px auto;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px 0 2px;
  vertical-align: middle;
}
.c-regist-style img {
  margin: 0 auto;
  height: auto;
  width: auto;
  max-width: 100%;
}
@media screen and (max-width: 800px) {
  .c-regist-style blockquote {
    padding: 12px 0 12px 16px;
  }
  .c-regist-style ul {
    margin: 32px 0;
  }
  .c-regist-style ol {
    margin: 32px 0;
  }
  .c-regist-style a[target=_blank]::after {
    background-size: 14px auto;
    width: 14px;
    height: 14px;
  }
}

/* js
/*+---------------------------------*/
.js-dropdown.-button, .js-accordion.-button, .js-hamburger.-button {
  cursor: pointer;
  transition: all 0.3s ease;
}
@media screen and (min-width: 801px) {
  .js-dropdown.-button::after, .js-accordion.-button::after, .js-hamburger.-button::after {
    transition: all 0.3s ease;
  }
  .js-dropdown.-button:hover, .js-accordion.-button:hover, .js-hamburger.-button:hover {
    opacity: 0.75;
  }
}
@media screen and (min-width: 801px) {
  .js-dropdown.-detail {
    display: none;
  }
}
.js-accordion.-detail {
  display: none;
}
.js-accordion-works {
  transition: all 0.3s 0s ease;
}
.js-accordion-works.-detail {
  visibility: hidden;
  opacity: 0;
}
.js-accordion-works.is-active .-detail {
  visibility: visible;
  opacity: 1;
}
@media screen and (max-width: 800px) {
  .js-hamburger.-detail {
    display: none;
  }
}
.js-tab.-button {
  cursor: pointer;
}
.js-tab.-detail {
  display: none;
}
.js-tab.-detail.is-active {
  display: block;
}
.js-photo.-base {
  position: relative;
  height: auto;
}
.js-photo.-main {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  transition: all 0.3s ease;
  width: 100%;
  height: 100%;
}
.js-photo.-main.is-active {
  opacity: 1;
  z-index: 1;
}
.js-photo.-button {
  cursor: pointer;
}
.js-more > li.is-hidden, .js-more2 > li.is-hidden {
  display: none;
  opacity: 0;
}
.js-more.-button.is-hidden, .js-more2.-button.is-hidden {
  display: none;
  opacity: 0;
}
.js-scroll-hint {
  overflow-x: auto;
}
@media screen and (min-width: 1201px) {
  .js-scroll-hint {
    overflow: visible !important;
  }
}
.js-scroll-hint .scroll-hint-text {
  margin-top: 1px;
}
@media screen and (min-width: 1201px) {
  .js-side.-floating {
    transition: all 0.3s ease;
    width: 100%;
    max-width: 300px;
  }
  .js-side.-floating.is-fixed {
    position: fixed;
    top: 86px;
  }
  .js-side.-floating.is-absolute {
    position: absolute;
    bottom: 0;
  }
}

.c-modal-box {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
.c-modal-box__content {
  left: 50%;
  margin: 40px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(calc(-50% - 40px), calc(-50% - 40px));
          transform: translate(calc(-50% - 40px), calc(-50% - 40px));
  width: 1000px;
  max-width: calc(100% - 80px);
  pointer-events: none;
}
.c-modal-box__content__inner {
  position: relative;
  margin: 0 auto;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  pointer-events: auto;
}
.c-modal-box__content__inner::before, .c-modal-box__content__inner::after {
  content: "";
  position: absolute;
  top: -32px;
  right: -4px;
  width: 32px;
  height: 32px;
  background-color: transparent;
  border-top: 2px #fff solid;
  pointer-events: none;
}
.c-modal-box__content__inner::before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  right: -14px;
}
.c-modal-box__content__inner::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  right: 8px;
}
.c-modal-box__content__inner img {
  display: block;
  margin: 0 auto;
  width: auto;
  max-width: 100%;
}
.c-modal-box__bg {
  background: rgba(0, 0, 0, 0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.c-modal-box .document {
  background-color: #fff;
  width: 1000px;
  max-width: 100%;
  margin: 0 auto;
  padding: 32px;
  max-height: 600px;
  overflow-y: auto;
}

.c-tel-link {
  color: #222;
}
@media screen and (min-width: 801px) {
  .c-tel-link {
    pointer-events: none;
  }
}

.c-text-link {
  text-decoration: underline;
}
@media screen and (min-width: 801px) {
  .c-text-link:hover {
    text-decoration: none;
  }
}

.c-content-heading-link {
  position: absolute;
  top: 14px;
  right: 8px;
  font-weight: 700;
  color: #005AB4;
  padding-right: 40px;
}
@media screen and (max-width: 800px) {
  .c-content-heading-link {
    position: relative;
    display: block;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin: 12px 0 4px auto;
    font-size: 1.2rem;
    top: 0;
    right: 0;
    padding-right: 36px;
  }
}

.c-tab__header .navigation {
  display: flex;
}
.c-tab__header .navigation > li {
  width: 100%;
  height: 80px;
  line-height: 1.4;
  font-size: 2.2rem;
  text-align: center;
  background-color: #002660;
  background: linear-gradient(to right, #002660 0%, #005AB4 100%);
}
.c-tab__header .navigation > li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #fff;
  position: relative;
  padding: 0 18px 0 8px;
}
.c-tab__header .navigation > li a::after {
  content: "";
  display: block;
  position: absolute;
  right: 6.6666666667%;
  top: 50%;
  margin-top: -6px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
.c-tab__header .navigation > li a:hover {
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.24);
}
.c-tab__header .navigation > li a:hover::after {
  margin-top: -3px;
}
.c-tab__header .navigation > li.is-current a {
  background: none;
  background-color: #E5EEF7;
  color: #222;
  font-weight: 700;
  pointer-events: none;
}
.c-tab__header .navigation > li.is-current a::after {
  display: none;
}
.c-tab__detail {
  background-color: #E5EEF7;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .c-tab__detail {
    padding-right: 24px;
    padding-left: 24px;
  }
}
.c-tab__detail__inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 40px;
}
.c-tab__detail__inner > div {
  width: 100%;
}
.c-tab__detail__inner .list-selection-business {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 80px 0 0 0;
  margin-bottom: -68px;
}
.c-tab__detail__inner .list-selection-business > li {
  width: calc(50% - 20px);
  margin-bottom: 40px;
}
.c-tab__detail__inner .list-selection-business > li .box {
  background-color: #fff;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  align-content: flex-start;
  flex-wrap: wrap;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
}
.c-tab__detail__inner .list-selection-business > li .box:hover {
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.24);
}
.c-tab__detail__inner .list-selection-business > li .box > .text {
  order: 1;
  width: 51.724137931%;
  padding: 16px;
}
.c-tab__detail__inner .list-selection-business > li .box > .text .c-heading-lv5 {
  text-align: center;
}
.c-tab__detail__inner .list-selection-business > li .box > .text p {
  font-size: 1.4rem;
  margin: 16px 0 0 0;
  color: #222;
}
.c-tab__detail__inner .list-selection-business > li .box > .image {
  order: 0;
  width: 48.275862069%;
}
.c-tab__detail__inner .list-selection-business > li .box > .image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  aspect-ratio: 4/3;
}
.c-tab__detail__inner .list-selection-business.-works > li {
  width: calc(25% - 12px);
}
.c-tab__detail__inner .list-selection-business.-works > li .box {
  align-items: flex-start;
}
.c-tab__detail__inner .list-selection-business.-works > li .box > .text {
  width: 100%;
}
.c-tab__detail__inner .list-selection-business.-works > li .box > .image {
  width: 100%;
}
.c-tab__detail__inner .list-selection-business.-works > li .box > .image img {
  aspect-ratio: 3/2;
}
.c-tab__detail__inner .list-selection-others {
  display: block;
  width: 100%;
  padding: 0;
  margin: 40px 0 -64px 0;
  display: flex;
  flex-wrap: wrap;
}
.c-tab__detail__inner .list-selection-others.-nontitle {
  background-color: #fff;
  padding: 16px 8px;
}
.c-tab__detail__inner .list-selection-others > .inner-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.c-tab__detail__inner .list-selection-others > .inner-list > .title {
  width: 9.6666666667%;
  height: 80px;
  background-color: #fff;
  font-weight: 700;
  color: #002660;
  font-size: 1.8rem;
  text-align: center;
  border-left: 2px #002660 solid;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.4;
}
.c-tab__detail__inner .list-selection-others > .inner-list > .list {
  width: 90.3333333333%;
}
.c-tab__detail__inner .list-selection-others > .inner-list > .list > ul {
  display: block;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 801px) {
  .c-tab__detail__inner .list-selection-others > .inner-list > .list > ul > li {
    min-width: 200px;
  }
}
.c-tab__detail__inner .list-selection-others li:not(.inner-list) {
  margin-left: 16px;
  width: 18.4842883549%;
  margin-bottom: 24px;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.3;
}
.c-tab__detail__inner .list-selection-others li:not(.inner-list) .box {
  display: flex;
  flex-wrap: wrap;
  color: #002660;
  width: 100%;
}
.c-tab__detail__inner .list-selection-others li:not(.inner-list) .box > .text {
  width: 100%;
  text-align: center;
  order: 1;
}
.c-tab__detail__inner .list-selection-others li:not(.inner-list) .box > .image {
  margin-bottom: 4px;
  width: 100%;
  height: 80px;
  border: 2px #002660 solid;
  order: 0;
}
.c-tab__detail__inner .list-selection-others li:not(.inner-list) .box > .image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
}
.c-tab__detail__inner .list-selection-others.-works > .inner-list {
  background-color: #fff;
  margin-bottom: 8px;
  align-items: stretch;
}
.c-tab__detail__inner .list-selection-others.-works > .inner-list > .title {
  margin: 0;
  height: auto;
}
.c-tab__detail__inner .list-selection-others.-works li:not(.inner-list) {
  padding-top: 12px;
  padding-bottom: 12px;
  margin-bottom: 0;
}
.c-tab__detail__inner .list-selection-others.-works li:not(.inner-list) .box {
  align-items: center;
}
.c-tab__detail__inner .list-selection-others.-works li:not(.inner-list) .box > .text {
  width: calc(100% - 82px);
  text-align: left;
  padding-left: 8px;
}
.c-tab__detail__inner .list-selection-others.-works li:not(.inner-list) .box > .image {
  margin-bottom: 0;
  width: 82px;
  height: 82px;
}
.c-tab__footer {
  margin-top: 100px;
}
@media screen and (max-width: 800px) {
  .c-tab__header {
    width: 100%;
  }
  .c-tab__header .navigation > li {
    line-height: 1.2;
    font-size: 1.5rem;
  }
  .c-tab__header .navigation > li a {
    padding: 8px 4px 20px 4px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .c-tab__header .navigation > li a::after {
    top: auto;
    right: 50%;
    bottom: 8px;
    margin-top: 0;
    margin-right: -7px;
  }
  .c-tab__detail__inner {
    margin-bottom: 16px;
  }
  .c-tab__detail__inner .list-selection-business {
    margin-bottom: -80px;
    padding: 24px 0 0 0;
  }
  .c-tab__detail__inner .list-selection-business > li {
    width: 100%;
    margin-bottom: 8px;
  }
  .c-tab__detail__inner .list-selection-business > li .box {
    align-items: flex-start;
  }
  .c-tab__detail__inner .list-selection-business > li .box > .text {
    padding: 12px;
  }
  .c-tab__detail__inner .list-selection-business > li .box > .text p {
    font-size: 1.2rem;
    margin: 8px 0 0 0;
  }
  .c-tab__detail__inner .list-selection-business > li .box > .image {
    height: auto;
  }
  .c-tab__detail__inner .list-selection-business > li .box > .image img {
    aspect-ratio: 4/3.6;
  }
  .c-tab__detail__inner .list-selection-business.-works {
    margin-bottom: -64px;
  }
  .c-tab__detail__inner .list-selection-business.-works > li {
    width: calc(50% - 4px);
  }
  .c-tab__detail__inner .list-selection-business.-works > li .box > .text {
    padding: 12px;
  }
  .c-tab__detail__inner .list-selection-business.-works > li .box > .text p {
    font-size: 1.2rem;
    margin: 8px 0 0 0;
  }
  .c-tab__detail__inner .list-selection-others {
    width: calc(100% + 8px);
    padding: 0;
    margin: 16px -4px -72px -4px;
  }
  .c-tab__detail__inner .list-selection-others > .inner-list > .title {
    display: flex;
    justify-content: flex-start;
    font-size: 1.2rem;
    text-align: left;
    width: 100%;
    height: auto;
    padding: 8px 12px;
    margin: 0 4px 16px 4px;
  }
  .c-tab__detail__inner .list-selection-others > .inner-list > .list {
    width: 100%;
  }
  .c-tab__detail__inner .list-selection-others li:not(.inner-list) {
    width: calc(50% - 8px);
    margin: 0 4px 12px 4px;
    font-size: 1.2rem;
  }
  .c-tab__detail__inner .list-selection-others li:not(.inner-list) .box > .text {
    width: 100%;
    text-align: center;
  }
  .c-tab__detail__inner .list-selection-others li:not(.inner-list) .box > .image {
    margin-bottom: 2px;
    height: 68px;
  }
  .c-tab__detail__inner .list-selection-others.-works > .inner-list {
    padding-bottom: 8px;
  }
  .c-tab__detail__inner .list-selection-others.-works li:not(.inner-list) {
    padding: 8px;
    margin-bottom: 0;
  }
  .c-tab__detail__inner .list-selection-others.-works li:not(.inner-list) .box {
    align-items: center;
  }
  .c-tab__detail__inner .list-selection-others.-works li:not(.inner-list) .box > .text {
    width: calc(100% - 82px);
    text-align: left;
    padding-left: 8px;
  }
  .c-tab__detail__inner .list-selection-others.-works li:not(.inner-list) .box > .image {
    margin-bottom: 0;
    width: 82px;
    height: 82px;
  }
  .c-tab__footer {
    margin-top: 100px;
    padding: 0 16px;
  }
}

.c-contact {
  padding-bottom: 100px;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .c-contact {
    padding-right: 24px;
    padding-left: 24px;
  }
}
.c-contact__text {
  text-align: center;
  font-size: 1.8rem;
}
.c-contact__text p {
  margin: 0;
}
.c-contact__button {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  margin: 44px 0 56px 0;
}
.c-contact__telephone .list {
  font-weight: bold;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 801px) {
  .c-contact__telephone .list {
    gap: 12px;
  }
}
.c-contact__telephone .list > li {
  width: calc(33.3333333333% - 8px);
  background-color: #fff;
  padding: 12px 2px;
  text-align: center;
}
.c-contact__telephone .list > li > .inner {
  display: inline-block;
  line-height: 1.4;
  text-align: left;
}
.c-contact__telephone .list .office {
  font-size: 1.8rem;
  display: block;
}
.c-contact__telephone .list .label {
  font-size: 1.4rem;
  color: #002660;
  display: inline-block;
  margin-right: 4px;
}
.c-contact__telephone .list .number {
  font-size: 2.4rem;
  color: #002660;
}
@media screen and (min-width: 801px) and (max-width: 1200px) {
  .c-contact__telephone .list .number {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 800px) {
  .c-contact {
    padding-bottom: 80px;
  }
  .c-contact__text {
    text-align: left;
    font-size: 1.6rem;
  }
  .c-contact__button {
    margin: 24px 0;
  }
  .c-contact__telephone .list {
    gap: 6px;
  }
  .c-contact__telephone .list > li {
    width: calc(50% - 3px);
  }
  .c-contact__telephone .list .office {
    font-size: 1.4rem;
  }
  .c-contact__telephone .list .label {
    font-size: 1.2rem;
    margin-right: 2px;
  }
  .c-contact__telephone .list .number {
    font-size: 1.8rem;
  }
}

.c-works-list {
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 801px) {
  .c-works-list.-wrap {
    justify-content: flex-start;
    flex-wrap: wrap;
    margin: -16px -14px 0 -14px;
  }
  .c-works-list.-wrap > li {
    width: calc(25% - 28px);
    margin: 16px 14px;
  }
  .c-works-list.-center {
    justify-content: center;
  }
  .c-works-list.-center > li {
    margin: 0 20px;
  }
}
.c-works-list > li {
  width: calc(32% - 18px);
  height: auto;
}
.c-works-list > li > .box {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  background-color: #fff;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
}
.c-works-list > li > .box:hover {
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.24);
}
.c-works-list > li > .box > .text {
  width: 100%;
  order: 1;
  padding: 0 12px 16px 12px;
}
.c-works-list > li > .box > .text .ico {
  line-height: 1;
  margin: -10px 0 8px 0;
  position: relative;
  z-index: 1;
}
.c-works-list > li > .box > .text p {
  font-weight: 700;
  color: #222;
  line-height: 1.4;
  margin: 0;
}
.c-works-list > li > .box > .image {
  width: 100%;
  order: 0;
}
.c-works-list > li > .box > .image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 800px) {
  .c-works-list {
    flex-wrap: wrap;
    margin: -4px 0;
  }
  .c-works-list:not(.c-works-list.swiper-wrapper, .c-works-list.-wrap) {
    margin: -4px 0;
  }
  .c-works-list:not(.c-works-list.swiper-wrapper, .c-works-list.-wrap) > li {
    width: 100%;
    margin: 4px 0;
  }
  .c-works-list:not(.c-works-list.swiper-wrapper, .c-works-list.-wrap) > li > .box > .text {
    width: 50%;
  }
  .c-works-list:not(.c-works-list.swiper-wrapper, .c-works-list.-wrap) > li > .box > .image {
    width: 50%;
  }
  .c-works-list > li {
    width: calc(50% - 4px);
    margin: 4px 0;
  }
  .c-works-list > li > .box > .text {
    padding: 0 8px 12px 8px;
  }
  .c-works-list > li > .box > .text .ico {
    margin: 0px 0 6px -8px;
  }
  .c-works-list > li > .box > .text p {
    font-size: 1.4rem;
  }
  .c-works-list.swiper-wrapper {
    flex-wrap: nowrap;
  }
  .c-works-list.swiper-wrapper > li {
    width: auto;
  }
}

.c-connect-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 72px 0;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .c-connect-box {
    padding-right: 16px;
    padding-left: 16px;
  }
}
.c-connect-box + .c-connect-box {
  padding-top: 0;
  margin-top: -32px;
}
.c-connect-box__header {
  width: 25%;
  text-align: center;
  border-left: 6px #005AB4 solid;
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-connect-box__detail {
  width: 75%;
}
.c-connect-box__footer {
  width: 100%;
  margin-top: 40px;
}
@media screen and (max-width: 800px) {
  .c-connect-box {
    padding: 40px 0 56px 0;
  }
  .c-connect-box__header {
    justify-content: flex-start;
    width: 100%;
    text-align: left;
    padding: 8px 16px;
    border-width: 4px;
  }
  .c-connect-box__detail {
    width: 100%;
    margin-top: 16px;
  }
  .c-connect-box__footer {
    width: 100%;
    margin-top: 16px;
  }
}

.c-connect-banner {
  display: flex;
  margin: 0 -12px;
}
@media screen and (min-width: 801px) {
  .c-connect-banner.-wrap {
    margin: -12px;
    flex-wrap: wrap;
  }
  .c-connect-banner.-wrap > .box {
    width: calc(50% - 24px);
    margin: 12px;
  }
}
.c-connect-banner .box {
  margin: 0 12px;
  width: 100%;
  display: flex;
  align-items: center;
  background: #fff;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 801px) {
  .c-connect-banner .box:hover {
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.24);
  }
}
.c-connect-banner .box > .text {
  order: 1;
  width: calc(100% - 160px);
  padding: 16px 32px;
}
.c-connect-banner .box > .text .ttl {
  color: #002660;
  font-size: 1.8rem;
}
.c-connect-banner .box > .text p {
  color: #222;
  font-size: 1.4rem;
  line-height: 1.6;
  margin: 8px 0 0 0;
}
.c-connect-banner .box > .image {
  order: 0;
  width: 160px;
  height: 100%;
}
.c-connect-banner .box > .image img {
  aspect-ratio: 4/3;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 800px) {
  .c-connect-banner {
    flex-wrap: wrap;
    margin: -8px;
  }
  .c-connect-banner .box {
    margin: 8px;
  }
  .c-connect-banner .box > .text {
    width: calc(100% - 140px);
    padding: 8px 16px;
  }
  .c-connect-banner .box > .text .ttl {
    font-size: 1.4rem;
  }
  .c-connect-banner .box > .text p {
    font-size: 1.2rem;
    margin: 4px 0 0 0;
  }
  .c-connect-banner .box > .image {
    width: 140px;
  }
}

.c-products-series-list {
  margin: -8px -6px;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .c-products-series-list {
    padding-right: 16px;
    padding-left: 16px;
  }
}
@media screen and (min-width: 801px) {
  .c-products-series-list.-three-column {
    max-width: 900px;
    margin-right: auto;
    margin-left: auto;
    justify-content: center;
  }
  .c-products-series-list.-three-column > li {
    width: 240px;
    margin: 16px 16px;
  }
  .c-products-series-list.-center {
    justify-content: center;
  }
}
.c-products-series-list > li {
  margin: 8px 6px;
  width: 224px;
}
.c-products-series-list > li > .box {
  display: flex;
  background-color: #fff;
  flex-wrap: wrap;
  height: 100%;
  align-content: flex-start;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
}
.c-products-series-list > li > .box > .text {
  width: 100%;
  color: #222;
  order: 1;
  font-size: 1.4rem;
  padding: 0;
  line-height: 1.6;
}
.c-products-series-list > li > .box > .text > .title {
  background-color: #C5E2F2;
  background: linear-gradient(to right, #E5EEF7 0%, #F6F9FC 100%);
  padding: 16px 8px;
}
.c-products-series-list > li > .box > .text > p {
  padding: 8px 12px 12px 12px;
  margin: 0;
}
.c-products-series-list > li > .box > .image {
  width: 100%;
  order: 0;
  padding: 8px 8px 0 8px;
}
.c-products-series-list > li > .box > .image img {
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 800px) {
  .c-products-series-list {
    margin: -4px;
  }
  .c-products-series-list > li {
    margin: 4px;
    width: calc(50% - 8px);
  }
  .c-products-series-list > li > .box > .text {
    width: 100%;
    color: #222;
    order: 2;
    font-size: 1.2rem;
  }
  .c-products-series-list > li > .box > .text p {
    padding: 4px 12px 12px 12px;
  }
  .c-products-series-list > li > .box > .text > .title {
    padding: 8px 4px;
  }
  .c-products-series-list > li > .box > .image {
    width: 100%;
    order: 0;
    padding: 8px 8px 0 8px;
  }
  .c-products-series-list > li > .box > .image img {
    aspect-ratio: 4/3;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
  }
}

@media screen and (min-width: 801px) {
  .-has-column .c-products-series-list {
    margin-right: -8px;
    margin-left: -8px;
  }
  .-has-column .c-products-series-list > li {
    margin-right: 3px;
    margin-left: 3px;
  }
}

.c-products-individual-list {
  margin: -8px;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .c-products-individual-list {
    padding-right: 16px;
    padding-left: 16px;
  }
}
.c-products-individual-list > li {
  margin: 8px;
  width: 280px;
}
.c-products-individual-list > li > .box {
  display: flex;
  background-color: #fff;
  flex-wrap: wrap;
  height: 100%;
  align-content: flex-start;
  position: relative;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
}
.c-products-individual-list > li > .box.is-current {
  background-color: #FFFEE9;
}
.c-products-individual-list > li > .box > .text {
  width: 100%;
  color: #222;
  order: 1;
  font-size: 1.4rem;
  padding: 16px 14px 12px 14px;
  line-height: 1.4;
}
.c-products-individual-list > li > .box > .text p {
  margin: 12px 0 0 0;
  line-height: 1.6;
}
.c-products-individual-list > li > .box > .image {
  width: 100%;
  order: 0;
}
.c-products-individual-list > li > .box > .image img {
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
.c-products-individual-list > li > .box > .icon {
  position: absolute;
  right: 0;
  bottom: 0;
  line-height: 1;
}
.c-products-individual-list > li > .box > .icon .c-label-icon {
  margin: 0;
}
@media screen and (max-width: 800px) {
  .c-products-individual-list {
    margin: -4px;
  }
  .c-products-individual-list > li {
    margin: 4px;
    width: calc(50% - 8px);
  }
  .c-products-individual-list > li > .box > .text {
    padding: 8px 12px 12px 12px;
    font-size: 1.2rem;
  }
  .c-products-individual-list > li > .box > .text p {
    margin-top: 4px;
  }
  .c-products-individual-list > li > .box > .image img {
    height: 100%;
  }
}

@media screen and (min-width: 801px) {
  .-has-column .c-products-individual-list > li {
    width: 270px;
  }
}

.c-font-en {
  font-family: "Oswald", sans-serif;
}

.c-form-check {
  display: none;
}
.c-form-check + span {
  display: inline-block;
  position: relative;
  cursor: pointer;
}
.c-form-check + span.is-whitebox {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  box-shadow: inset 0 -4px 0 rgba(0, 0, 0, 0.16);
  height: 50px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #005AB4;
  padding: 0 0 4px 16px;
}
.c-form-check + span.is-whitebox.-light {
  background-color: #E5EEF7;
}
.c-form-check + span.is-whitebox::before {
  display: inline-block;
  content: "";
  position: absolute;
  left: 16px;
  top: calc(50% - 14px);
  border: 2px #ccc solid;
  width: 24px;
  height: 24px;
  background-color: #fff;
}
@media screen and (max-width: 800px) {
  .c-form-check + span.is-whitebox {
    font-size: 1.5rem;
  }
  .c-form-check + span.is-whitebox::before {
    left: 8px;
    top: calc(50% - 12px);
    width: 20px;
    height: 20px;
  }
}
.c-form-check + span.is-navybox {
  background-color: #fff;
  color: #002660;
  border: 1px #002660 solid;
  border-radius: 5px;
  padding: 4px 10px 5px 10px;
  margin: 0;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
}
@media screen and (max-width: 800px) {
  .c-form-check + span.is-navybox {
    font-size: 1.4rem;
    padding-top: 14px;
    padding-bottom: 14px;
  }
}
.c-form-check + span.is-bluebox {
  background-color: #fff;
  color: #005AB4;
  border: 1px #005AB4 solid;
  border-radius: 5px;
  padding: 4px 10px 5px 10px;
  margin: 0;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
}
@media screen and (max-width: 800px) {
  .c-form-check + span.is-bluebox {
    font-size: 1.4rem;
    padding-top: 14px;
    padding-bottom: 14px;
  }
}
.c-form-check + span.is-navy-smokebluebox {
  background-color: #fff;
  color: #40779B;
  border: 1px #5690B1 solid;
  border-radius: 5px;
  padding: 4px 10px 5px 10px;
  margin: 0;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
}
@media screen and (max-width: 800px) {
  .c-form-check + span.is-navy-smokebluebox {
    font-size: 1.2rem;
    padding-top: 14px;
    padding-bottom: 14px;
  }
}
.c-form-check + span.is-smokebluebox {
  background-color: #fff;
  color: #5690B1;
  border: 1px #5690B1 solid;
  border-radius: 5px;
  padding: 4px 10px 5px 10px;
  margin: 0;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.2;
}
@media screen and (max-width: 800px) {
  .c-form-check + span.is-smokebluebox {
    font-size: 1.2rem;
    padding-top: 8px;
    padding-bottom: 8px;
    min-height: 44px;
    display: flex;
    align-items: center;
  }
}
.c-form-check:checked + span {
  color: #fff;
}
.c-form-check:checked + span.is-whitebox {
  box-shadow: none;
  padding-top: 2px;
  height: 48px;
  margin-top: 0;
  color: #005AB4;
}
.c-form-check:checked + span.is-whitebox::before {
  top: calc(50% - 12px);
}
.c-form-check:checked + span.is-whitebox::after {
  display: block;
  content: "";
  position: absolute;
  left: 20px;
  top: calc(50% - 8px);
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  border-top: 3px solid #005AB4;
  border-right: 3px solid #005AB4;
  width: 16px;
  height: 10px;
}
@media screen and (max-width: 800px) {
  .c-form-check:checked + span.is-whitebox::before {
    top: calc(50% - 10px);
  }
  .c-form-check:checked + span.is-whitebox::after {
    width: 14px;
    height: 8px;
    left: 11px;
    top: calc(50% - 6px);
  }
}
.c-form-check:checked + span.is-navybox {
  background-color: #002660;
}
.c-form-check:checked + span.is-bluebox {
  background-color: #005AB4;
}
.c-form-check:checked + span.is-smokebluebox {
  background-color: #5690B1;
}
.c-form-check:checked + span.is-navy-smokebluebox {
  border-color: #5690B1;
  background-color: #5690B1;
}

.c-form-radio {
  display: none;
}
.c-form-radio + span {
  display: inline-block;
  position: relative;
  cursor: pointer;
  text-align: center;
}
.c-form-radio + span.is-whitebox {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  box-shadow: inset 0 -4px 0 rgba(0, 0, 0, 0.16);
  height: 50px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #005AB4;
  padding: 0 8px 4px 32px;
}
.c-form-radio + span.is-whitebox.-light {
  background-color: #E5EEF7;
  box-shadow: inset 0 -4px 0 #B8D2E8;
}
.c-form-radio + span.is-whitebox::before {
  display: inline-block;
  content: "";
  position: absolute;
  left: 12px;
  top: calc(50% - 14px);
  border: 2px #ccc solid;
  border-radius: 100%;
  width: 24px;
  height: 24px;
  background-color: #fff;
}
@media screen and (max-width: 800px) {
  .c-form-radio + span.is-whitebox {
    font-size: 1.5rem;
  }
  .c-form-radio + span.is-whitebox::before {
    left: 8px;
    top: calc(50% - 12px);
    width: 20px;
    height: 20px;
  }
}
.c-form-radio:checked + span.is-whitebox {
  box-shadow: none;
  padding-top: 2px;
  height: 48px;
  margin-top: 2px;
}
.c-form-radio:checked + span.is-whitebox::before {
  top: calc(50% - 12px);
}
.c-form-radio:checked + span.is-whitebox::after {
  display: block;
  content: "";
  position: absolute;
  left: 17px;
  top: calc(50% - 7px);
  width: 14px;
  height: 14px;
  background-color: #005AB4;
  border-radius: 100%;
}
@media screen and (max-width: 800px) {
  .c-form-radio:checked + span.is-whitebox::before {
    top: calc(50% - 10px);
  }
  .c-form-radio:checked + span.is-whitebox::after {
    width: 12px;
    height: 12px;
    left: 12px;
    top: calc(50% - 6px);
  }
}

.p-aform-detail {
  margin-top: 40px;
}
.p-aform-detail dl {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  line-height: 1.4;
}
.p-aform-detail dl dt, .p-aform-detail dl dd {
  border: 1px #5690B1 solid;
  padding: 16px;
  position: relative;
  margin-top: 1px;
}
.p-aform-detail dl dt {
  width: 24%;
  background-color: #E5EEF7;
  font-weight: 700;
}
.p-aform-detail dl dd {
  width: calc(76% - 1px);
}
.p-aform-detail.-error dl dt, .p-aform-detail.-error dl dd {
  border-color: #AC0000;
  color: #AC0000;
}
.p-aform-detail.-error dl dt {
  background-color: #FFF3F3;
}
@media screen and (max-width: 800px) {
  .p-aform-detail dl dt, .p-aform-detail dl dd {
    width: 100%;
    padding: 8px 16px;
  }
}

.aform-button-area {
  margin: 40px 0;
}
.aform-button-area .c-button {
  padding: 0;
}
.aform-button-area .c-button > input.button {
  border: none;
  background-color: transparent;
  border-radius: 0;
  font-size: 100%;
  font-weight: inherit;
  color: inherit;
  display: block;
  width: 100%;
  padding-top: 14px;
  padding-bottom: 17px;
}
.aform-button-area .c-button, .aform-button-area .c-button::after {
  transition: all 0.3s ease;
}

.aform-error {
  color: #AC0000;
}
.aform-error:not(:empty) {
  background-color: #F9EBEB;
  padding: 8px;
  margin-top: 8px;
}
.aform-error:empty {
  padding: 0;
  margin: 0;
}

.aform-input-example {
  display: inline;
}
.aform-input-example:not(:empty) {
  margin-top: 8px;
  margin-right: 8px;
}
.aform-input-example:not(:empty)::before {
  content: "";
  display: block;
  margin-top: 8px;
}

.aform-validation {
  color: #999;
}

.aform-required {
  font-size: 1.2rem;
  border-color: #AC0000;
  background-color: #AC0000;
  color: #fff;
  font-weight: 700;
  padding: 2px 4px 3px 4px;
  line-height: 1;
  position: absolute;
  right: 16px;
  top: 12px;
  display: inline-block;
}

.aform-twice-note {
  display: block;
  margin: 16px 0 8px 0;
}

.aform-name-ul, .aform-kana-ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (min-width: 801px) {
  .aform-name-ul > li, .aform-kana-ul > li {
    margin-right: 16px;
  }
}
.aform-name-ul > li > label, .aform-kana-ul > li > label {
  display: inline-block;
  width: 2em;
  height: 1.4em;
  vertical-align: middle;
  overflow: hidden;
  font-weight: 700;
  text-align: right;
  margin-right: 4px;
}
@media screen and (max-width: 800px) {
  .aform-name-ul > li > label, .aform-kana-ul > li > label {
    text-align: left;
  }
  .aform-name-ul > li:not(:first-child), .aform-kana-ul > li:not(:first-child) {
    margin-top: 6px;
  }
}

th .aform-input-example {
  font-size: 90%;
}

input.aform-input[type=text], input.aform-input[type=tel], input.aform-input[type=email] {
  border: 1px #999 solid;
  padding: 8px;
  width: 400px;
}
@media screen and (max-width: 800px) {
  input.aform-input[type=text], input.aform-input[type=tel], input.aform-input[type=email] {
    width: 100%;
  }
}

input.aform-name[type=text], input.aform-kana[type=text] {
  width: 200px;
}
@media screen and (max-width: 800px) {
  input.aform-name[type=text], input.aform-kana[type=text] {
    width: 100%;
  }
}

.aform-prefecture, .aform-select {
  border: 1px #999 solid;
  padding: 8px;
  border-radius: 5px;
  width: 400px;
}
@media screen and (max-width: 800px) {
  .aform-prefecture, .aform-select {
    width: 100%;
  }
}

.aform-textarea {
  border: 1px #999 solid;
  padding: 8px;
  width: 100%;
  height: 150px;
}

@media screen and (max-width: 968px) {
  .p-noisesimulation {
    margin-right: -28px;
    margin-left: -28px;
  }
}
.p-noisesimulation__pict {
  position: relative;
  padding-top: 48.8095238095%;
}
@media screen and (max-width: 968px) {
  .p-noisesimulation__pict {
    padding-top: 87.2%;
  }
}
.p-noisesimulation__pict__image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
.p-noisesimulation__pict__image .only-pc {
  display: block;
}
@media screen and (max-width: 968px) {
  .p-noisesimulation__pict__image .only-pc {
    display: none;
  }
}
.p-noisesimulation__pict__image .only-sp {
  display: none;
}
@media screen and (max-width: 968px) {
  .p-noisesimulation__pict__image .only-sp {
    display: block;
  }
}
.p-noisesimulation__pict__input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-size: 1.8rem;
  line-height: 1.6;
}
.p-noisesimulation__pict__input .p-noisesimulation-text-error {
  position: absolute;
  display: inline-block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  top: -22px;
  left: -50%;
  background-color: rgba(255, 255, 255, 0.5);
}
.p-noisesimulation__pict__input input {
  font-size: 1.8rem;
}
@media screen and (max-width: 1040px) {
  .p-noisesimulation__pict__input {
    font-size: 1.6rem;
  }
  .p-noisesimulation__pict__input input {
    font-size: 1.6rem;
  }
  .p-noisesimulation__pict__input .p-noisesimulation-link-help {
    font-size: 1.2rem;
  }
}
.p-noisesimulation__pict__input .p-noisesimulation-text-unit {
  display: inline-block;
  vertical-align: bottom;
  margin-bottom: -4px;
}
.p-noisesimulation__pict__input .noise-source, .p-noisesimulation__pict__input .e-fx, .p-noisesimulation__pict__input .noise-barrier, .p-noisesimulation__pict__input .calculation-point {
  position: absolute;
}
.p-noisesimulation__pict__input .noise-source.-q {
  color: #5690B1;
  display: flex;
  flex-wrap: wrap;
  left: 5.9523809524%;
  top: 17.8861788618%;
}
.p-noisesimulation__pict__input .noise-source.-q .p-noisesimulation-input-text, .p-noisesimulation__pict__input .noise-source.-q .p-noisesimulation-select {
  width: 68px;
  padding: 6px 4px;
}
.p-noisesimulation__pict__input .noise-source.-q .p-noisesimulation-text-error {
  left: 0;
}
.p-noisesimulation__pict__input .noise-source.-q .input-title {
  margin-right: 8px;
  font-weight: 700;
}
.p-noisesimulation__pict__input .noise-source.-q .supplement {
  position: relative;
  margin-left: 24px;
}
.p-noisesimulation__pict__input .noise-source.-q .supplement::before {
  position: absolute;
  content: "…";
  left: -24px;
  top: 8px;
  width: 24px;
  font-size: 1.4rem;
  text-align: center;
}
.p-noisesimulation__pict__input .noise-source.-w {
  left: 25.9920634921%;
  top: 45.7317073171%;
}
.p-noisesimulation__pict__input .noise-source.-h {
  left: 21.8253968254%;
  top: 65.4471544715%;
}
.p-noisesimulation__pict__input .e-fx {
  color: #005AE1;
}
.p-noisesimulation__pict__input .e-fx.-supplement {
  padding-right: 16px;
  left: 59.3253968254%;
  top: 3.6585365854%;
  font-size: 1.4rem;
}
.p-noisesimulation__pict__input .e-fx.-supplement::before {
  position: absolute;
  content: "…";
  left: -24px;
  top: 10px;
  width: 24px;
  font-size: 1.4rem;
  text-align: center;
}
.p-noisesimulation__pict__input .e-fx.-supplement .p-noisesimulation-link-help {
  display: inline-block;
}
@media screen and (max-width: 1040px) {
  .p-noisesimulation__pict__input .e-fx.-supplement .p-noisesimulation-link-help {
    display: block;
    text-align: right;
  }
}
.p-noisesimulation__pict__input .e-fx.-h {
  left: 55.2579365079%;
  top: 16.0569105691%;
  font-weight: 700;
}
.p-noisesimulation__pict__input .noise-barrier.-h {
  left: 51.9841269841%;
  top: 33.9430894309%;
}
.p-noisesimulation__pict__input .calculation-point .p-noisesimulation-text-error {
  top: auto;
  bottom: -31px;
}
.p-noisesimulation__pict__input .calculation-point.-w {
  left: 61.4087301587%;
  top: 45.7317073171%;
}
.p-noisesimulation__pict__input .calculation-point.-h {
  left: 79.9603174603%;
  top: 71.3414634146%;
}
@media screen and (max-width: 968px) {
  .p-noisesimulation__pict__input {
    font-size: 1.4rem;
    line-height: 1.4;
  }
  .p-noisesimulation__pict__input input {
    font-size: 1.4rem;
  }
  .p-noisesimulation__pict__input .p-noisesimulation-input-text, .p-noisesimulation__pict__input .p-noisesimulation-select {
    padding: 5px 4px;
    width: 48px;
  }
  .p-noisesimulation__pict__input .p-noisesimulation-text-unit {
    margin-left: 0;
    margin-bottom: -1px;
    font-size: 1.2rem;
  }
  .p-noisesimulation__pict__input .p-noisesimulation-link-help {
    margin-top: 2px;
  }
  .p-noisesimulation__pict__input .p-noisesimulation-text-error {
    font-size: 1rem;
    top: -14px;
  }
  .p-noisesimulation__pict__input .noise-source.-q {
    display: block;
    left: 1.6%;
    top: 24.4648318043%;
  }
  .p-noisesimulation__pict__input .noise-source.-q .p-noisesimulation-input-text, .p-noisesimulation__pict__input .noise-source.-q .p-noisesimulation-select {
    width: 68px;
    height: 36px;
  }
  .p-noisesimulation__pict__input .noise-source.-q .input-title {
    margin-right: 1px;
  }
  .p-noisesimulation__pict__input .noise-source.-q .supplement {
    margin-top: 4px;
  }
  .p-noisesimulation__pict__input .noise-source.-q .supplement::before {
    top: 0px;
  }
  .p-noisesimulation__pict__input .noise-source.-w {
    left: 25.6%;
    top: 60.244648318%;
  }
  .p-noisesimulation__pict__input .noise-source.-w .p-noisesimulation-text-error {
    left: -85%;
  }
  .p-noisesimulation__pict__input .noise-source.-h {
    left: 18.6666666667%;
    top: 72.1712538226%;
  }
  .p-noisesimulation__pict__input .noise-source.-h .p-noisesimulation-text-error {
    top: auto;
    bottom: -22px;
  }
  .p-noisesimulation__pict__input .e-fx.-supplement {
    padding-right: 8px;
    left: 65.0666666667%;
    top: 2.4464831804%;
    font-size: 1.2rem;
  }
  .p-noisesimulation__pict__input .e-fx.-supplement::before {
    top: auto;
    bottom: -2px;
  }
  .p-noisesimulation__pict__input .e-fx.-supplement .p-noisesimulation-link-help {
    text-align: left;
  }
  .p-noisesimulation__pict__input .e-fx.-h {
    left: 62.4%;
    top: 32.1100917431%;
  }
  .p-noisesimulation__pict__input .e-fx.-h .p-noisesimulation-text-error {
    top: -14px;
    bottom: auto;
  }
  .p-noisesimulation__pict__input .noise-barrier.-h {
    left: 51.7333333333%;
    top: 67.2782874618%;
  }
  .p-noisesimulation__pict__input .noise-barrier.-h .p-noisesimulation-text-error {
    top: -14px;
    bottom: auto;
  }
  .p-noisesimulation__pict__input .calculation-point.-w {
    left: 59.2%;
    top: 51.376146789%;
  }
  .p-noisesimulation__pict__input .calculation-point.-w .p-noisesimulation-text-error {
    top: -14px;
    bottom: auto;
  }
  .p-noisesimulation__pict__input .calculation-point.-h {
    left: 75.2%;
    top: 72.7828746177%;
  }
  .p-noisesimulation__pict__input .calculation-point.-h .p-noisesimulation-text-error {
    left: -85%;
    bottom: -22px;
  }
}
.p-noisesimulation__calculation {
  background-color: #002660;
  padding: 20px 40px 40px 40px;
}
.p-noisesimulation__calculation__inner {
  background-color: #EBF1F6;
  padding: 40px;
}
.p-noisesimulation__calculation__inner__button {
  margin: 32px 0;
  padding-top: 1px;
}
.p-noisesimulation__calculation__inner__button .supplement {
  color: #AC0000;
  text-align: center;
  font-size: 1.4rem;
}
.p-noisesimulation__calculation__inner__result .c-content-box {
  margin-bottom: 0;
}
.p-noisesimulation__calculation__inner__result .error-box {
  padding: 16px;
  border: #AC0000 1px solid;
  background-color: #FFF3F3;
  color: #AC0000;
}
.p-noisesimulation__calculation__inner__result .table-box {
  margin: 32px 0;
}
@media screen and (max-width: 968px) {
  .p-noisesimulation__calculation {
    padding: 0 10px 10px 10px;
  }
  .p-noisesimulation__calculation__inner {
    padding: 16px;
  }
  .p-noisesimulation__calculation__inner__button {
    margin: 24px 0;
  }
  .p-noisesimulation__calculation__inner__button .supplement {
    font-size: 1.2rem;
  }
  .p-noisesimulation__calculation__inner__result .error-box {
    padding: 8px;
  }
  .p-noisesimulation__calculation__inner__result .table-box {
    margin: 24px 0;
  }
}
.p-noisesimulation-table {
  border: 0;
  border-spacing: 0 1px !important;
  width: 100%;
}
.p-noisesimulation-table.-result {
  border-spacing: 1px !important;
  width: 816px;
}
.p-noisesimulation-table.-result th {
  padding: 16px 8px;
  text-align: center;
  vertical-align: middle;
  font-size: 1.8rem;
}
.p-noisesimulation-table.-result th:first-child {
  width: 235px;
}
.p-noisesimulation-table.-result td {
  padding: 16px;
  width: 105px;
  text-align: center;
}
.p-noisesimulation-table.-result td:first-of-type {
  width: 128px;
}
.p-noisesimulation-table.-result td:nth-of-type(2), .p-noisesimulation-table.-result td:nth-of-type(3) {
  width: 118px;
}
.p-noisesimulation-table.-result tr:first-child th {
  width: auto;
}
.p-noisesimulation-table tr {
  margin-bottom: 1px;
}
.p-noisesimulation-table th, .p-noisesimulation-table td {
  border: 0;
  padding: 16px 24px;
}
.p-noisesimulation-table th {
  width: 28%;
  background-color: #D2E2F1;
  text-align: left;
  color: #002660;
  font-weight: bold;
}
.p-noisesimulation-table td {
  width: 72%;
  background-color: #fff;
  vertical-align: middle;
}
.p-noisesimulation-table td.result {
  font-size: 138%;
  font-weight: 700;
}
.p-noisesimulation-table .title th, .p-noisesimulation-table .title td {
  border-bottom: 32px #EBF1F6 solid;
}
.p-noisesimulation-table .choice-list {
  display: flex;
  flex-wrap: wrap;
  margin: -4px;
}
.p-noisesimulation-table .choice-list > li {
  margin: 4px;
  width: calc(50% - 8px);
}
.p-noisesimulation-table .choice-list > li .is-whitebox {
  font-size: 1.6rem;
}
.p-noisesimulation-table .accent {
  background-color: #002660;
  color: #fff;
}
@media screen and (max-width: 968px) {
  .p-noisesimulation-table:not(.-result) th, .p-noisesimulation-table:not(.-result) td {
    display: block;
    width: 100%;
    border: 0;
    padding: 16px;
  }
  .p-noisesimulation-table:not(.-result) th {
    font-size: 1.6rem;
  }
  .p-noisesimulation-table:not(.-result) td {
    margin-bottom: 2px;
  }
  .p-noisesimulation-table:not(.-result) .title th, .p-noisesimulation-table:not(.-result) .title td {
    border-bottom: none;
  }
  .p-noisesimulation-table:not(.-result) .choice-list > li {
    width: 100%;
  }
}
.p-noisesimulation-text-unit {
  margin-left: 4px;
}
.p-noisesimulation-text-supplement {
  margin-bottom: 8px;
  color: #666;
  font-size: 1.4rem;
}
.p-noisesimulation-text-error {
  margin-bottom: 8px;
  color: #AC0000;
  font-size: 1.4rem;
  font-weight: 700;
}
.p-noisesimulation-link-help {
  margin-top: 4px;
  font-size: 1.4rem;
}
.p-noisesimulation-input-text {
  padding: 5px 8px;
  border: 2px #ccc solid;
  border-radius: 5px;
  width: 84px;
  font-weight: 700;
}
.p-noisesimulation-input-text.-navy {
  border-color: #002660;
}
.p-noisesimulation-input-text.-bluegray {
  border-color: #5690B1;
}
.p-noisesimulation-input-text.-yellow {
  border-color: #DE883C;
}
.p-noisesimulation-input-text.-readonly, .p-noisesimulation-input-text[readonly], .p-noisesimulation-input-text[readonly=readonly] {
  background-color: #F1FAFF;
  border-color: #F1FAFF;
  color: #002660;
  pointer-events: none;
}
.p-noisesimulation-input-text.-error, .p-noisesimulation-input-text:invalid {
  border-color: #AC0000;
  background-color: #FFF3F3;
}
.p-noisesimulation-select {
  padding: 5px 8px;
  border: 2px #ccc solid;
  border-radius: 5px;
  width: 200px;
  background-color: #fff;
  box-shadow: none;
  font-weight: 700;
  outline: 0;
}
.p-noisesimulation-select.-navy {
  border-color: #002660;
}
.p-noisesimulation-select.-bluegray {
  border-color: #5690B1;
}
.p-noisesimulation-select.-yellow {
  border-color: #DE883C;
}
.p-noisesimulation-select.-readonly, .p-noisesimulation-select[readonly], .p-noisesimulation-select[readonly=readonly] {
  background-color: #F1FAFF;
  border-color: #F1FAFF;
  color: #002660;
  pointer-events: none;
}
.p-noisesimulation-select.-error, .p-noisesimulation-select:invalid {
  border-color: #AC0000;
  background-color: #FFF3F3;
}
@media screen and (max-width: 968px) {
  .p-noisesimulation-input-text {
    padding: 12px 16px;
    width: calc(100% - 56px);
  }
  .p-noisesimulation-select {
    padding: 12px 16px;
    width: calc(100% - 56px);
    height: 48px;
  }
}

.p-noisesimulation-button-example {
  padding: 6px 0 10px 0;
  background-color: #005AB4;
  box-shadow: inset 0 -4px 0 rgba(0, 0, 0, 0.25);
  color: #fff;
}
@media screen and (min-width: 801px) {
  .p-noisesimulation-button-example:hover {
    background-color: #005AB4;
  }
  .p-noisesimulation-button-example:active {
    margin-top: 4px;
    padding-bottom: 6px;
    box-shadow: none;
  }
}
@media screen and (max-width: 968px) {
  .p-noisesimulation-button-example {
    display: inline-block;
    padding: 2px 20px 4px 12px;
    box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.25);
    font-size: 1.2rem;
  }
  .p-noisesimulation-button-example.-icon-modal::after {
    width: 14px;
    height: 14px;
    background-size: 14px 14px;
    top: calc(50% - 8px);
    right: 2px;
  }
}

.p-noisesimulation-button-submit {
  padding: 6px 0 10px 0;
  background-color: #002660;
  background: linear-gradient(to right, #002660 0%, #005AB4 100%);
  box-shadow: inset 0 -4px 0 rgba(0, 0, 0, 0.25);
  color: #fff;
}
@media screen and (min-width: 801px) {
  .p-noisesimulation-button-submit:active {
    margin-top: 4px;
    padding-bottom: 6px;
    box-shadow: none;
  }
}

.p-top-visual__inner .slide {
  position: relative;
  height: 100%;
}
.p-top-visual__inner .slide__text {
  text-shadow: 2px 2px 0 #fff;
  line-height: 1.55;
  font-weight: 700;
  letter-spacing: 0.15em;
  position: absolute;
  left: 12.5%;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
@media screen and (min-width: 1601px) {
  .p-top-visual__inner .slide__text {
    font-size: 9.2rem;
  }
}
@media screen and (max-width: 1600px) {
  .p-top-visual__inner .slide__text {
    font-size: 5.75vw;
  }
}
.p-top-visual__inner .slide__text > b {
  line-height: 1.1;
  display: inline-block;
  text-shadow: none;
  background-color: #002660;
  background: linear-gradient(to top, #002660 0%, #0087FF 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.p-top-visual__inner .slide__text > b.is-few {
  font-size: 184%;
}
.p-top-visual__inner .slide__text > b.is-many {
  font-size: 124%;
}
.p-top-visual__inner .slide__image {
  margin: 0 0 0 25%;
  height: 100%;
}
.p-top-visual__inner .slide__image img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
.p-top-visual__inner .slide-pager {
  bottom: 1px !important;
  left: 12.5% !important;
  width: 12.5% !important;
  height: 22px;
  position: absolute;
  z-index: 1;
  text-align: left !important;
}
.p-top-visual__inner .slide-pager .swiper-pagination-bullet {
  width: 24%;
  margin: 0 8% 0 0 !important;
  height: 2px !important;
  border-radius: 0 !important;
  transition: all 0.3s ease;
}
@media screen and (max-width: 800px) {
  .p-top-visual__inner {
    height: 384px;
  }
  .p-top-visual__inner .slide__text {
    font-size: 4rem;
    letter-spacing: 0.1em;
    left: 4.2666666667%;
    text-shadow: 1px 1px 0 #fff;
  }
  .p-top-visual__inner .slide__image {
    margin: 0 0 0 17.0666666667%;
  }
  .p-top-visual__inner .slide-pager {
    bottom: 0 !important;
    left: 4.8% !important;
    width: 17.0666666667% !important;
    height: 21px;
  }
  .p-top-visual__inner .slide-pager .swiper-pagination-bullet {
    width: 12.5%;
    margin: 0 6px 0 0 !important;
  }
}

.p-top-about {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-top: 100px;
}
.p-top-about__text {
  width: 46.6666666667%;
  position: relative;
  margin-bottom: 40px;
}
.p-top-about__text > .title {
  overflow: visible;
}
.p-top-about__text > .title > .inner {
  margin-top: -110px;
  margin-left: -0.65em;
}
.p-top-about__text > .text {
  font-size: 1.8rem;
  margin-top: 0;
  line-height: 2.4;
}
.p-top-about__text > .button {
  margin-top: 48px;
  width: 320px;
}
.p-top-about__image {
  width: 46.6666666667%;
  position: relative;
  z-index: 1;
}
.p-top-about__image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  aspect-ratio: 16/9;
}
.p-top-about__image::before, .p-top-about__image::after {
  z-index: -1;
  position: absolute;
  background-color: #E5EEF7;
  display: block;
  content: "";
  height: 100%;
  top: -40px;
  z-index: -1;
}
.p-top-about__image::before {
  width: 100%;
  right: -40px;
}
.p-top-about__image::after {
  width: 400px;
  right: -400px;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .p-top-about {
    padding-left: 80px;
  }
}
@media screen and (max-width: 800px) {
  .p-top-about {
    padding-top: 64px;
  }
  .p-top-about__text {
    width: 100%;
  }
  .p-top-about__text > .title {
    font-size: 8.8rem;
  }
  .p-top-about__text > .title > .inner {
    margin-top: -72px;
    margin-left: -18px;
  }
  .p-top-about__text > .text {
    font-size: 1.6rem;
    margin-top: -8px;
  }
  .p-top-about__text > .button {
    margin-top: 16px;
    width: 100%;
  }
  .p-top-about__image {
    width: calc(100% - 4px);
    margin: 32px 0 0 -16px;
  }
  .p-top-about__image::before {
    top: -26px;
  }
  .p-top-about__image:after {
    top: -26px;
  }
}

.p-top-business {
  background-color: #E5EEF7;
  margin-right: 100px;
  margin-left: 100px;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 1601px) {
  .p-top-business {
    margin-right: 6.25%;
    margin-left: 6.25%;
  }
}
.p-top-business::after {
  height: 100%;
  width: 400px;
  display: block;
  content: "";
  background-color: #E5EEF7;
  position: absolute;
  top: 0;
  left: -400px;
}
.p-top-business__inner {
  padding: 20px 0;
}
.p-top-business__inner .business-box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 80px 0;
}
.p-top-business__inner .business-box__text {
  padding-top: 36px;
  width: 46.6666666667%;
  order: 1;
}
.p-top-business__inner .business-box__text > .title {
  color: #002660;
  font-size: 3.2rem;
}
.p-top-business__inner .business-box__text .button {
  padding-left: 55.4104477612%;
}
.p-top-business__inner .business-box__text .works-box {
  background-color: #fff;
  padding: 20px 0 26px 30px;
  margin-top: 32px;
  position: relative;
  z-index: 1;
}
.p-top-business__inner .business-box__text .works-box::after {
  background-color: #fff;
  content: "";
  display: block;
  width: 400px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -400px;
  z-index: -1;
}
.p-top-business__inner .business-box__text .works-box__title {
  position: relative;
}
.p-top-business__inner .business-box__text .works-box__title > .title {
  font-size: 1.8rem;
  color: #002660;
}
.p-top-business__inner .business-box__text .works-box__title > .button {
  position: absolute;
  right: 0;
  top: 0;
}
.p-top-business__inner .business-box__text .works-box__detail {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 20px;
}
@media screen and (min-width: 801px) {
  .p-top-business__inner .business-box__text .works-box__detail:hover {
    opacity: 0.7;
  }
}
.p-top-business__inner .business-box__text .works-box__detail > .text {
  width: 57.3122529644%;
  color: #222;
  font-weight: 700;
  order: 1;
  line-height: 1.4;
}
.p-top-business__inner .business-box__text .works-box__detail > .text > .ico {
  margin-top: 8px;
}
.p-top-business__inner .business-box__text .works-box__detail > .image {
  width: 39.5256916996%;
  order: 0;
}
.p-top-business__inner .business-box__text .works-box__detail > .image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  aspect-ratio: 16/9;
}
.p-top-business__inner .business-box__image {
  order: 0;
  width: 49.3333333333%;
  position: relative;
  z-index: 1;
}
.p-top-business__inner .business-box__image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  aspect-ratio: 4/3;
}
.p-top-business__inner .business-box__image::after {
  z-index: -1;
  position: absolute;
  background-color: rgba(0, 91, 172, 0.1);
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  bottom: -48px;
  right: -64px;
  z-index: -1;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .p-top-business {
    margin-right: 40px;
    margin-left: 40px;
  }
  .p-top-business__inner {
    padding-right: 40px;
  }
}
@media screen and (max-width: 800px) {
  .p-top-business {
    margin-right: 16px;
    margin-left: 16px;
  }
  .p-top-business__inner {
    padding: 4px 0;
  }
  .p-top-business__inner .business-box {
    margin: 60px 0 80px 0;
  }
  .p-top-business__inner .business-box__text {
    padding-top: 24px;
    padding-right: 16px;
    width: 100%;
  }
  .p-top-business__inner .business-box__text > .title {
    font-size: 2.2rem;
  }
  .p-top-business__inner .business-box__text .button {
    padding-left: 0;
  }
  .p-top-business__inner .business-box__text .works-box {
    padding: 16px 0 16px 16px;
    margin-top: 40px;
    margin-right: -16px;
  }
  .p-top-business__inner .business-box__text .works-box__title > .button {
    position: absolute;
    right: 0;
    top: 0;
  }
  .p-top-business__inner .business-box__text .works-box__detail {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 20px;
  }
  .p-top-business__inner .business-box__text .works-box__detail > .text {
    font-size: 1.4rem;
  }
  .p-top-business__inner .business-box__text .works-box__detail > .text > .ico {
    margin-top: 8px;
  }
  .p-top-business__inner .business-box__text .works-box__detail > .image {
    width: 39.5256916996%;
    order: 0;
  }
  .p-top-business__inner .business-box__image {
    width: calc(100% - 16px);
    margin-left: -16px;
  }
  .p-top-business__inner .business-box__image::after {
    width: calc(100% + 16px);
    bottom: -40px;
    right: -16px;
  }
}

.p-top-works {
  padding-bottom: 100px;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .p-top-works {
    padding-right: 40px;
    padding-left: 40px;
  }
}
.p-top-works__inner {
  position: relative;
}
.p-top-works__inner .slide.swiper {
  padding-bottom: 60px;
}
.p-top-works__inner .slide-button {
  margin-top: -96px;
  padding-top: 1px;
  border: 2px #fff solid;
  width: 48px;
  height: 48px;
  border-radius: 100%;
  color: #fff;
  --swiper-navigation-size: 16px;
  transition: all 0.3s ease;
}
.p-top-works__inner .slide-button.swiper-button-next {
  margin-right: -100px;
  padding-left: 2px;
}
.p-top-works__inner .slide-button.swiper-button-prev {
  margin-left: -100px;
  padding-right: 2px;
}
.p-top-works__inner .slide-pager {
  bottom: 0 !important;
  display: block;
}
.p-top-works__inner .slide-pager .swiper-pagination-bullet {
  width: 14px !important;
  height: 14px !important;
  margin: 0 8px !important;
  background-color: #fff !important;
  opacity: 0.5 !important;
}
.p-top-works__inner .slide-pager .swiper-pagination-bullet-active {
  opacity: 1 !important;
}
.p-top-works__inner .button {
  margin-top: 40px;
}
@media screen and (max-width: 800px) {
  .p-top-works {
    padding-bottom: 64px;
  }
  .p-top-works__inner .slide-button {
    margin-top: 0;
    top: auto;
    bottom: 88px;
    width: 34px;
    height: 34px;
  }
  .p-top-works__inner .slide-button.swiper-button-next {
    margin-right: -8px;
  }
  .p-top-works__inner .slide-button.swiper-button-prev {
    margin-left: -8px;
  }
  .p-top-works__inner .slide-pager {
    bottom: 0 !important;
    display: block;
  }
  .p-top-works__inner .slide-pager .swiper-pagination-bullet {
    margin: 0 12px !important;
  }
  .p-top-works__inner .button {
    margin-top: 30px;
  }
}

.p-top-news {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .p-top-news {
    padding-right: 24px;
    padding-left: 24px;
  }
}
.p-top-news__header {
  width: 20%;
}
.p-top-news__header > .title {
  font-size: 3.2rem;
  text-align: left;
  padding: 0;
}
.p-top-news__header > .button {
  margin-top: 32px;
}
.p-top-news__detail {
  width: 74.1666666667%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 800px) {
  .p-top-news {
    padding-top: 80px;
    padding-bottom: 64px;
  }
  .p-top-news__header {
    width: 100%;
  }
  .p-top-news__header > .title {
    font-size: 2.4rem;
  }
  .p-top-news__header > .c-letters-decorative {
    font-size: 8.8rem;
  }
  .p-top-news__header > .button {
    display: none;
  }
  .p-top-news__detail {
    margin-top: 32px;
    width: 100%;
  }
}

.p-top-column {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .p-top-column {
    padding-right: 24px;
    padding-left: 24px;
  }
}
.p-top-column__header {
  width: 20%;
}
.p-top-column__header > .title {
  font-size: 3.2rem;
  text-align: left;
  padding: 0;
}
.p-top-column__header > .button {
  margin-top: 32px;
}
.p-top-column__detail {
  width: 74.1666666667%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 800px) {
  .p-top-column {
    padding-top: 80px;
    padding-bottom: 64px;
  }
  .p-top-column__header {
    width: 100%;
  }
  .p-top-column__header > .title {
    font-size: 2.4rem;
  }
  .p-top-column__header > .c-letters-decorative {
    font-size: 8.8rem;
  }
  .p-top-column__header > .button {
    display: none;
  }
  .p-top-column__detail {
    margin-top: 32px;
    width: 100%;
  }
}
.p-top-column-list {
  display: flex;
  margin: 0 -12px;
}
.p-top-column-list > li {
  margin: 0 12px;
  width: 100%;
}
.p-top-column-list .box {
  width: 100%;
  height: 100%;
  display: flex;
  background: #fff;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 801px) {
  .p-top-column-list .box:hover {
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.24);
  }
}
.p-top-column-list .box > .text {
  order: 1;
  width: 53.1177829099%;
  padding: 16px;
}
.p-top-column-list .box > .text .ttl {
  color: #222;
}
.p-top-column-list .box > .text .dat {
  color: #999;
  font-size: 1.4rem;
}
.p-top-column-list .box > .text .ico {
  font-size: 0;
  margin-top: 8px;
}
.p-top-column-list .box > .text p {
  color: #222;
  font-size: 1.4rem;
  line-height: 1.6;
  margin: 8px 0 0 0;
}
.p-top-column-list .box > .image {
  order: 0;
  width: 46.8822170901%;
}
.p-top-column-list .box > .image img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
@media screen and (max-width: 800px) {
  .p-top-column-list {
    flex-wrap: wrap;
    margin: -8px;
  }
  .p-top-column-list > li {
    margin: 8px;
  }
  .p-top-column-list .box > .text {
    width: calc(100% - 140px);
    padding: 8px 16px;
  }
  .p-top-column-list .box > .text .ttl {
    font-size: 1.4rem;
  }
  .p-top-column-list .box > .text .dat {
    font-size: 1.2rem;
  }
  .p-top-column-list .box > .text p {
    font-size: 1.2rem;
    margin: 4px 0 0 0;
  }
  .p-top-column-list .box > .image {
    width: 140px;
  }
}

.p-acoustics-flow-cover {
  background-color: #EEF9FC;
  padding: 24px 24px 8px 24px;
  margin: 64px 0;
}
.p-acoustics-heading-catch {
  font-size: 2.4rem;
  margin: 24px 0;
  color: #002660;
  font-weight: 700;
  text-align: center;
  line-height: 1.8;
}
.p-acoustics-heading-catch > span {
  font-size: 125%;
}
.p-acoustics-fukidashi {
  margin: 0 -16px;
  display: flex;
  flex-wrap: wrap;
}
.p-acoustics-fukidashi > li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(33.3333333333% - 32px);
  min-height: 112px;
  margin: 0 16px 35px 16px;
  background-color: #fff;
  border-radius: 6px;
  padding: 8px 12px;
  position: relative;
  text-align: center;
  color: #002660;
  font-weight: 700;
  line-height: 1.8;
  -webkit-filter: drop-shadow(0px 3px 0 #CEEAF2);
          filter: drop-shadow(0px 3px 0 #CEEAF2);
}
.p-acoustics-fukidashi > li::after {
  content: "";
  position: absolute;
  left: calc(50% - 7px);
  bottom: -15px;
  width: 0;
  height: 0;
  border-style: solid;
}
@media screen and (min-width: 801px) {
  .p-acoustics-fukidashi > li:nth-child(3n-2)::after {
    border-width: 0 21px 15px 0;
    border-color: transparent #ffffff transparent;
  }
  .p-acoustics-fukidashi > li:nth-child(3n-1) {
    margin-top: 20px;
    margin-bottom: 15px;
  }
  .p-acoustics-fukidashi > li:nth-child(3n-1)::after {
    border-width: 15px 10.5px 0 10.5px;
    border-color: #ffffff transparent transparent transparent;
  }
  .p-acoustics-fukidashi > li:nth-child(3n)::after {
    border-width: 15px 21px 0 0;
    border-color: #ffffff transparent transparent transparent;
  }
}
@media screen and (max-width: 800px) {
  .p-acoustics-flow-cover {
    margin: 24px -12px;
    padding: 4px 0;
  }
  .p-acoustics-flow-cover .c-image-box {
    margin: 8px;
  }
  .p-acoustics-heading-catch {
    font-size: 1.8rem;
    margin: 16px 0;
  }
  .p-acoustics-fukidashi {
    margin: 0 4px;
  }
  .p-acoustics-fukidashi > li {
    width: calc(50% - 8px);
    min-height: 0;
    margin: 0 4px 16px 4px;
    padding: 8px;
    font-size: 1.1rem;
    line-height: 1.6;
  }
  .p-acoustics-fukidashi > li::after {
    content: "";
    position: absolute;
    left: calc(50% - 7px);
    bottom: -7px;
    width: 0;
    height: 0;
    border-style: solid;
  }
  .p-acoustics-fukidashi > li:nth-child(2n-1)::after {
    border-width: 0 10px 7px 0;
    border-color: transparent #ffffff transparent;
  }
  .p-acoustics-fukidashi > li:nth-child(2n) {
    margin-top: 16px;
    margin-bottom: 8px;
  }
  .p-acoustics-fukidashi > li:nth-child(2n)::after {
    border-width: 7px 10px 0 0;
    border-color: #ffffff transparent transparent transparent;
  }
}

.p-acoustics-point {
  position: relative;
}
@media screen and (min-width: 801px) {
  .p-acoustics-point {
    margin: 40px -80px;
  }
}
.p-acoustics-point-pict {
  width: 70%;
  margin: 0 auto;
}
.p-acoustics-point-thum {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.p-acoustics-point-thum > li {
  position: absolute;
  width: 14.1666666667%;
  padding-top: 11.6666666667%;
  z-index: 1;
}
.p-acoustics-point-thum > li::after {
  display: block;
  position: absolute;
  z-index: -1;
  content: "";
  bottom: 9.2857142857%;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
.p-acoustics-point-thum > li.is-floor {
  right: 0;
  top: 67.3333333333%;
}
.p-acoustics-point-thum > li.is-floor::after {
  background-image: url("/assets/img/acoustics/acoustics_point_floor-line.png");
  right: 98.2352941176%;
  bottom: 5%;
  width: 181.7647058824%;
  height: 11.4285714286%;
}
.p-acoustics-point-thum > li.is-brace {
  right: 0;
  top: 10%;
}
.p-acoustics-point-thum > li.is-brace::after {
  background-image: url("/assets/img/acoustics/acoustics_point_brace-line.png");
  right: 98.2352941176%;
  width: 54.1176470588%;
  height: 79.2857142857%;
}
.p-acoustics-point-thum > li.is-absorption {
  right: 0;
  top: 38.6666666667%;
}
.p-acoustics-point-thum > li.is-absorption::after {
  background-image: url("/assets/img/acoustics/acoustics_point_absorption-line.png");
  right: 98.2352941176%;
  width: 72.9411764706%;
  height: 57.1428571429%;
}
.p-acoustics-point-thum > li.is-door {
  left: 0;
  top: 67.3333333333%;
}
.p-acoustics-point-thum > li.is-door::after {
  background-image: url("/assets/img/acoustics/acoustics_point_door-line.png");
  left: 98.2352941176%;
  width: 178.8235294118%;
  height: 115.7142857143%;
}
.p-acoustics-point-thum > li.is-wall {
  left: 0;
  top: 38.6666666667%;
}
.p-acoustics-point-thum > li.is-wall::after {
  background-image: url("/assets/img/acoustics/acoustics_point_wall-line.png");
  left: 98.2352941176%;
  bottom: -1.4285714286%;
  width: 51.7647058824%;
  height: 21.4285714286%;
}
.p-acoustics-point-thum > li.is-ceiling {
  left: 0;
  top: 10%;
}
.p-acoustics-point-thum > li.is-ceiling::after {
  background-image: url("/assets/img/acoustics/acoustics_point_ceiling-line.png");
  left: 98.2352941176%;
  width: 108.8235294118%;
  height: 90.7142857143%;
}
.p-acoustics-point-thum > li .wrap {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  box-shadow: 3px 3px 9px 0 rgba(0, 0, 0, 0.16);
}
.p-acoustics-point-thum > li .wrap:hover {
  box-shadow: 3px 3px 18px 0 rgba(0, 0, 0, 0.24);
}
.p-acoustics-point-thum > li .wrap .text {
  position: absolute;
  top: 80%;
  left: 0;
  z-index: 1;
  color: #fff;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.5;
  display: calc(100% - 8px);
  width: 100%;
  text-align: center;
  padding-right: 8px;
}
@media screen and (max-width: 1140px) {
  .p-acoustics-point-thum > li .wrap .text {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1000px) {
  .p-acoustics-point-thum > li .wrap .text {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 900px) {
  .p-acoustics-point-thum > li .wrap .text {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 800px) {
  .p-acoustics-point-thum > li .wrap .text {
    font-size: 1rem;
  }
}
@media screen and (max-width: 600px) {
  .p-acoustics-point-thum > li .wrap .text {
    font-size: 0.8rem;
    line-height: 1.3;
    padding-right: 4px;
  }
}
@media screen and (max-width: 400px) {
  .p-acoustics-point-thum > li .wrap .text {
    font-size: 0.74rem;
  }
}
.p-acoustics-point-thum > li .wrap .image {
  position: absolute;
  display: block;
}
.p-acoustics-point-thum > li .wrap .image img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 800px) {
  .p-acoustics-point {
    margin: 16px -26px;
  }
}

.p-consulting-flow {
  display: flex;
  align-items: center;
  margin: 0 -20px;
}
.p-consulting-flow > li {
  width: calc(25% - 20px);
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  position: relative;
  margin: 0 20px;
  padding: 16px;
}
.p-consulting-flow > li + li::before {
  display: block;
  content: "";
  position: absolute;
  top: calc(50% - 12px);
  left: -25px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 0 12px 14px;
  border-color: transparent transparent transparent #002660;
}
.p-consulting-flow > li:first-child {
  background-color: #EAF6DC;
  color: #207D00;
}
.p-consulting-flow > li:nth-child(2) {
  background-color: #E4F5F6;
  color: #02818D;
}
.p-consulting-flow > li:nth-child(3) {
  background-color: #F9EAEE;
  color: #9A183E;
}
.p-consulting-flow > li:nth-child(4) {
  background-color: #F2E7F5;
  color: #6B117E;
}
.p-consulting-flow > li .text {
  width: 100%;
  font-size: 2.2rem;
  font-weight: 700;
  order: 1;
}
.p-consulting-flow > li .image {
  width: 100%;
  order: 0;
}
.p-consulting-flow > li .image img {
  width: 80px;
  height: auto;
}
@media screen and (max-width: 800px) {
  .p-consulting-flow {
    margin: 0 -8px;
  }
  .p-consulting-flow > li {
    width: calc(25% - 8px);
    margin: 0 8px;
    padding: 4px;
  }
  .p-consulting-flow > li + li::before {
    top: calc(50% - 6px);
    left: -11px;
    border-width: 6px 0 6px 7px;
  }
  .p-consulting-flow > li .text {
    font-size: 1.4rem;
  }
  .p-consulting-flow > li .image img {
    width: 100%;
  }
}

.p-literature-list {
  margin: 40px 0;
}
.p-literature-list > li {
  display: flex;
  justify-content: space-between;
  margin: 8px 0;
}
.p-literature-list > li .title {
  background-color: #E5EEF7;
  padding: 16px;
  width: 50.5%;
  display: flex;
  align-items: center;
}
.p-literature-list > li .text {
  width: 49.5%;
  padding: 8px 12px;
  background-color: #F6F9FC;
}
.p-literature-list > li .text dl {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.4rem;
  line-height: 1.3;
}
.p-literature-list > li .text dl dt {
  font-weight: 700;
  width: 54px;
  margin: 4px 0;
}
.p-literature-list > li .text dl dd {
  width: calc(100% - 54px);
  margin: 4px 0;
}
@media screen and (max-width: 800px) {
  .p-literature-list {
    margin: 16px 0;
  }
  .p-literature-list > li {
    display: block;
    margin: 8px 0;
  }
  .p-literature-list > li .title {
    width: 100%;
    padding: 8px 12px;
  }
  .p-literature-list > li .text {
    width: 100%;
    padding: 8px;
  }
  .p-literature-list > li .text dl {
    font-size: 1.2rem;
  }
  .p-literature-list > li .text dl dt {
    width: 50px;
    margin: 3px 0;
  }
  .p-literature-list > li .text dl dd {
    width: calc(100% - 50px);
    margin: 3px 0;
  }
}

.p-roaditem-list {
  display: flex;
  flex-wrap: wrap;
  margin: 32px -19px 64px -19px;
}
.p-roaditem-list > li {
  width: calc(50% - 38px);
  margin: 0 19px;
  border-bottom: 2px #f5f5f5 solid;
}
.p-roaditem-list > li a {
  display: flex;
  padding: 12px 16px;
  font-weight: 700;
  background: transparent url("/assets/img/common/icon_arrow-mini-right-blue.svg") calc(100% - 16px) center no-repeat;
  background-size: 14px 7px;
  height: 100%;
}
@media screen and (min-width: 801px) {
  .p-roaditem-list > li a:hover {
    background-position: calc(100% - 8px) center;
    opacity: 0.8;
  }
}
.p-roaditem-list > li a > .number {
  background-color: #002660;
  text-align: center;
  font-size: 1.8rem;
  color: #fff;
  width: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-roaditem-list > li a > .text {
  font-weight: 700;
  color: #222;
  margin-left: 24px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 800px) {
  .p-roaditem-list {
    margin: 0 -8px 32px -8px;
  }
  .p-roaditem-list > li {
    width: calc(50% - 16px);
    margin: 0 8px;
  }
  .p-roaditem-list > li a {
    padding: 8px 8px 8px 0;
    background-position: right center;
    background-size: 8px auto;
    line-height: 1.4;
  }
  .p-roaditem-list > li a > .number {
    font-size: 1.2rem;
    width: 32px;
  }
  .p-roaditem-list > li a > .text {
    margin-left: 4px;
    font-size: 1.2rem;
    width: calc(100% - 36px);
  }
}

.p-roadmap {
  pointer-events: none;
}
.p-roadmap area {
  pointer-events: none;
}

.p-products .c-heading-lv2 {
  padding: 48px 0;
}
@media screen and (min-width: 801px) {
  .p-products .c-wrapper__inner {
    padding-bottom: 64px;
  }
  .p-products .c-cover.-margin {
    margin: 64px 0;
  }
  .p-products .c-cover.-padding-bottom {
    padding-bottom: 64px;
  }
}
.p-products img:not(table img) {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center center;
     object-position: center center;
  aspect-ratio: 16/9;
}
.p-products img:not(table img).is-contain {
  -o-object-fit: contain;
     object-fit: contain;
}
.p-products img:not(table img).is-cover {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-products img:not(table img).is-auto {
  -o-object-fit: fill;
     object-fit: fill;
  -o-object-position: center top;
     object-position: center top;
  aspect-ratio: auto;
  width: 100%;
  max-width: 100%;
  height: auto;
}
.p-products-outset {
  display: flex;
  justify-content: space-between;
  margin: 40px 0;
}
@media screen and (max-width: 1200px) {
  .p-products-outset {
    padding: 0 16px;
  }
}
.p-products-outset__text {
  width: 39.3333333333%;
  order: 1;
}
.p-products-outset__text .icon {
  margin-bottom: 24px;
}
.p-products-outset__text .text {
  margin: 20px auto;
}
.p-products-outset__slide {
  order: 0;
  width: 57.3333333333%;
}
.p-products-outset__slide .image {
  margin-bottom: 8px;
  padding-top: 56.25%;
}
.p-products-outset__slide .thumbnail {
  display: flex;
  margin: 0 -4px;
}
.p-products-outset__slide .thumbnail > li {
  width: calc(33.3333333333% - 8px);
  transition: all 0.3s ease;
  margin: 0 4px;
}
.p-products-outset__slide .thumbnail > li > span {
  display: block;
  width: 100%;
}
.p-products-outset__slide .thumbnail > li.is-current {
  border: 2px #002660 solid;
  box-sizing: border-box;
}
@media screen and (max-width: 800px) {
  .p-products-outset {
    flex-wrap: wrap;
    margin: 24px 0;
  }
  .p-products-outset__text {
    width: 100%;
  }
  .p-products-outset__text .icon {
    margin-bottom: 8px;
  }
  .p-products-outset__text .text {
    margin: 20px auto;
  }
  .p-products-outset__slide {
    margin-bottom: 24px;
    width: 100%;
  }
}

.p-products-basic-box {
  display: flex;
  justify-content: center;
  margin-right: -10px;
  margin-left: -10px;
  margin-bottom: 40px;
}
.p-products-basic-box:not(:first-child) {
  margin-top: 40px;
}
.p-products-basic-box:last-child {
  margin-bottom: 0;
}
.p-products-basic-box > .item-box {
  width: 100%;
  margin-right: 20px;
  margin-left: 20px;
  position: relative;
}
.p-products-basic-box > .item-box > .text {
  margin: 16px 0;
}
.p-products-basic-box.-flex-wrap {
  flex-wrap: wrap;
}
.p-products-basic-box.-flex-wrap > .item-box {
  width: calc(50% - 40px);
  margin: 0 20px 24px 20px;
}
@media screen and (max-width: 800px) {
  .p-products-basic-box {
    flex-wrap: wrap;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 32px;
  }
  .p-products-basic-box:not(:first-child) {
    margin-top: 24px;
  }
  .p-products-basic-box > .item-box {
    margin-right: 0;
    margin-left: 0;
  }
  .p-products-basic-box > .item-box > .text {
    margin: 8px 0;
  }
  .p-products-basic-box > .item-box > .text:last-child {
    margin-bottom: 0;
  }
  .p-products-basic-box > .item-box.-image {
    margin-top: 16px;
  }
  .p-products-basic-box > .item-box.-image:first-child {
    margin-top: 0;
  }
  .p-products-basic-box > .item-box + .item-box {
    margin-top: 8px;
  }
  .p-products-basic-box > .item-box + .item-box.-image {
    margin-top: 16px;
  }
  .p-products-basic-box.-flex-wrap > .item-box {
    width: 100%;
    margin: 16px 0 0 0;
  }
}

@media screen and (min-width: 801px) {
  .p-products-table-box table {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
.p-products-table-box table th, .p-products-table-box table td {
  border-color: #5690B1;
  padding: 6px;
}
.p-products-table-box table th {
  color: #fff;
  background-color: #5690B1;
}
.p-products-table-box table .is-subtitle {
  background-color: #E5EEF7;
  color: #5690B1;
}
@media screen and (max-width: 800px) {
  .p-products-table-box > table {
    width: auto !important;
  }
}

.p-works .c-heading-lv2 {
  padding: 56px 0;
}
.p-works-outset {
  margin: 40px auto 64px auto;
}
.p-works-outset__slide {
  display: flex;
  justify-content: space-between;
}
.p-works-outset__slide img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center center;
     object-position: center center;
  aspect-ratio: 16/9;
  height: 100%;
}
.p-works-outset__slide img.is-contain {
  -o-object-fit: contain;
     object-fit: contain;
}
.p-works-outset__slide img.is-cover {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-works-outset__slide .image {
  width: 78.5%;
  order: 1;
}
.p-works-outset__slide .image > ul {
  width: 100%;
  padding-top: 56.25%;
}
.p-works-outset__slide .thumbnail {
  width: 18.6666666667%;
  order: 0;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: flex-start;
}
.p-works-outset__slide .thumbnail > li {
  width: 100%;
  background-color: #f5f5f5;
}
.p-works-outset__slide .thumbnail > li + li {
  margin-top: 8px;
}
.p-works-outset__slide .thumbnail > li.is-current {
  border: 2px #002660 solid;
}
.p-works-innerbox {
  max-width: 900px;
  margin: 0 auto 56px auto;
}
.p-works-innerbox:last-child {
  margin-bottom: 0;
}
.p-works-classification {
  background-color: #E5EEF7;
  padding: 32px 0;
}
.p-works-classification dl {
  color: #002660;
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  letter-spacing: 0.05em;
}
.p-works-classification dl dt {
  font-weight: 700;
  width: 17%;
  margin: 4px 0;
  position: relative;
  padding-right: 8px;
}
.p-works-classification dl dt:nth-child(4n-1) {
  width: 10%;
}
.p-works-classification dl dt::after {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  content: "：";
  font-weight: 700;
}
.p-works-classification dl dd {
  width: 33%;
  margin: 4px 0;
  padding-right: 24px;
  padding-left: 4px;
}
.p-works-classification dl dd:nth-child(4n) {
  width: 40%;
}
.p-works-classification dl dd a {
  color: inherit;
}
.p-works-classification dl dd a:link {
  text-decoration: underline;
}
.p-works-aside-column {
  max-width: 900px;
  margin: 0 auto;
}
.p-works-aside-column .wrap {
  width: 100%;
  display: flex;
  padding: 16px;
  background-color: #fff;
  color: #222;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
}
.p-works-aside-column .wrap:hover {
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.24);
}
.p-works-aside-column .wrap > .text {
  order: 1;
  width: 100%;
  position: relative;
}
.p-works-aside-column .wrap > .text .ttl {
  position: absolute;
  right: -16px;
  top: -16px;
}
.p-works-aside-column .wrap > .text .ttl-h {
  font-size: 1.8rem;
  font-weight: 700;
  color: #002660;
  position: relative;
  padding: 16px 16px 0 0;
  z-index: 1;
}
.p-works-aside-column .wrap > .text .ttl-deco {
  position: absolute;
  right: -0.065em;
  top: -0.14em;
  color: #E5EEF7;
  font-size: 7.7rem;
  font-family: "Oswald", sans-serif;
  line-height: 1;
}
.p-works-aside-column .wrap > .text .txt {
  position: absolute;
  z-index: 1;
  width: 100%;
  right: 0;
  bottom: 0;
  margin-top: 28px;
}
.p-works-aside-column .wrap > .text .txt-dat {
  display: inline-block;
  margin-right: 8px;
  font-size: 1.4rem;
}
.p-works-aside-column .wrap > .text .txt-ico {
  display: inline-block;
  font-size: 0;
}
.p-works-aside-column .wrap > .text .txt-txt {
  font-weight: 700;
  margin-top: 8px;
  padding-bottom: 12px;
  line-height: 1.6;
}
.p-works-aside-column .wrap > .image {
  order: 0;
  margin-right: 24px;
  width: 162px;
  height: 108px;
}
.p-works-aside-column .wrap > .image img {
  min-width: 162px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  aspect-ratio: 3/2;
}
@media screen and (max-width: 800px) {
  .p-works-outset {
    margin: 16px auto 16px auto;
  }
  .p-works-outset__slide {
    flex-wrap: wrap;
  }
  .p-works-outset__slide .image {
    width: 100%;
    order: 0;
  }
  .p-works-outset__slide .thumbnail {
    width: 100%;
    order: 1;
    flex-direction: row;
    margin: 8px -4px 0 -4px;
  }
  .p-works-outset__slide .thumbnail > li {
    width: calc(25% - 8px);
    margin: 0 4px;
  }
  .p-works-outset__slide .thumbnail > li + li {
    margin-top: 0;
  }
  .p-works-innerbox {
    margin: 0 auto 24px auto;
  }
  .p-works-classification {
    padding: 8px 16px;
  }
  .p-works-classification dl dt {
    font-weight: 700;
    width: 40%;
    margin: 4px 0;
    padding-right: 8px;
  }
  .p-works-classification dl dt:nth-child(4n-1) {
    width: 40%;
  }
  .p-works-classification dl dd {
    width: 60%;
    margin: 4px 0;
    padding-right: 0;
    padding-left: 4px;
  }
  .p-works-classification dl dd:nth-child(4n) {
    width: 60%;
  }
  .p-works-aside-column .wrap {
    padding: 8px;
    position: relative;
  }
  .p-works-aside-column .wrap > .text {
    position: static;
    width: 100%;
  }
  .p-works-aside-column .wrap > .text .ttl {
    width: 100%;
    top: 0;
    right: 0;
  }
  .p-works-aside-column .wrap > .text .ttl-h {
    font-size: 1.6rem;
    text-align: center;
  }
  .p-works-aside-column .wrap > .text .ttl-deco {
    font-size: 6.6rem;
  }
  .p-works-aside-column .wrap > .text .txt {
    margin-top: 44px;
    position: static;
  }
  .p-works-aside-column .wrap > .text .txt-dat {
    font-size: 1.2rem;
  }
  .p-works-aside-column .wrap > .text .txt-txt {
    margin-top: 4px;
  }
  .p-works-aside-column .wrap > .image {
    margin-top: 52px;
    width: 32%;
    margin-right: 8px;
  }
  .p-works-aside-column .wrap > .image img {
    min-width: 104px;
    aspect-ratio: 1/1;
  }
}

@media screen and (max-width: 800px) {
  .p-works-accent::before {
    height: 320px;
  }
}
.p-works-search {
  padding: 40px;
}
.p-works-search-content {
  margin: 16px 0 32px 0;
}
.p-works-search-content-field {
  display: flex;
  gap: 8px;
  margin-bottom: 8px;
}
.p-works-search-content-field .field-title {
  background-color: #CDDEEF;
  padding: 12px;
  width: 140px;
  border-radius: 5px 0 0 5px;
}
.p-works-search-content-field .field-title .ttl {
  font-size: 1.2rem;
  font-weight: bold;
  color: #002660;
}
.p-works-search-content-field .field-detail {
  width: calc(100% - 148px);
  padding: 4px 0;
}
.p-works-search-content-list {
  position: relative;
}
.p-works-search-content-list:not(.-inline) {
  display: flex;
  justify-content: space-between;
  margin: 0;
  gap: 8px;
}
.p-works-search-content-list:not(.-inline) > li {
  margin: 0;
  width: 100%;
}
.p-works-search-content-list.-inline {
  display: flex;
  justify-content: flex-start;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  flex-wrap: wrap;
  margin: 0;
  gap: 4px;
  width: 100%;
}
.p-works-search-content-list.-inline > li {
  margin: 0;
}
.p-works-search-content-list > li .acc {
  position: relative;
  cursor: pointer;
  text-align: center;
  background-color: #fff;
  border-radius: 5px;
  padding: 4px 24px 5px 10px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
  display: inline-block;
}
.p-works-search-content-list > li .acc::after {
  right: 8px;
  top: 50%;
  margin-top: -6px;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  display: block;
  content: "";
  position: absolute;
}
.p-works-search-content-list > li .acc.is-bluebox {
  color: #005AB4;
  border: 1px #005AB4 solid;
  border-radius: 5px;
}
.p-works-search-content-list > li .acc.is-bluebox::after {
  border-top: 2px solid #005AB4;
  border-right: 2px solid #005AB4;
}
.p-works-search-content-list > li .acc.is-navybox {
  color: #002660;
  border: 1px #002660 solid;
  border-radius: 5px;
}
.p-works-search-content-list > li .acc.is-navybox::after {
  border-top: 2px solid #002660;
  border-right: 2px solid #002660;
}
.p-works-search-content-list > li .acc.is-navybox.has-checked {
  background-color: #002660;
  color: #fff;
}
.p-works-search-content-list > li .acc.is-navy-smokebluebox {
  color: #002660;
  border: 1px #002660 solid;
  border-radius: 5px;
}
.p-works-search-content-list > li .acc.is-navy-smokebluebox::after {
  border-top: 2px solid #002660;
  border-right: 2px solid #002660;
}
.p-works-search-content-list > li .acc.is-navy-smokebluebox.has-checked {
  background-color: #5690B1;
  color: #fff;
}
@media screen and (max-width: 800px) {
  .p-works-search-content-list > li .acc {
    font-size: 1.4rem;
    padding-top: 14px;
    padding-bottom: 14px;
  }
  .p-works-search-content-list > li .acc.is-navy-smokebluebox {
    font-size: 1.2rem;
  }
}
.p-works-search-content-list > li.is-active .acc {
  color: #fff;
  border-radius: 5px 5px 0 0;
  padding-bottom: 10px;
}
.p-works-search-content-list > li.is-active .acc::after {
  border-color: #fff;
  -webkit-transform: rotate(315deg);
  transform: rotate(315deg);
  margin-top: -3px;
}
.p-works-search-content-list > li.is-active .acc::before {
  display: block;
  content: "";
  position: absolute;
  left: -1px;
  bottom: -5px;
  width: calc(100% + 2px);
  height: 5px;
}
@media screen and (max-width: 800px) {
  .p-works-search-content-list > li.is-active .acc {
    padding-bottom: 18px;
  }
}
.p-works-search-content-list > li.is-active .acc.is-bluebox {
  background-color: #005AB4;
}
.p-works-search-content-list > li.is-active .acc.is-bluebox::before {
  background-color: #005AB4;
}
.p-works-search-content-list > li.is-active .acc.is-navybox {
  background-color: #002660;
}
.p-works-search-content-list > li.is-active .acc.is-navybox::before {
  background-color: #002660;
}
.p-works-search-content-list > li.is-active .acc.is-navy-smokebluebox {
  background-color: #002660;
}
.p-works-search-content-list > li.is-active .acc.is-navy-smokebluebox::before {
  background-color: #002660;
}
.p-works-search-content-list-inner {
  padding: 12px;
  border-radius: 5px;
  position: absolute;
  left: 0;
  top: auto;
  width: 100%;
  margin-bottom: 2px;
  line-height: 1;
}
.p-works-search-content-list-inner.is-blue {
  background-color: #005AB4;
}
.p-works-search-content-list-inner.is-navy {
  background-color: #002660;
}
.p-works-search-content-list-inner > ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0;
  gap: 4px;
}
.p-works-search-content-choosing {
  background-color: #CDDEEF;
  display: flex;
  flex-wrap: wrap;
  margin-top: 16px;
  padding: 12px;
  border-radius: 5px;
}
.p-works-search-content-choosing .choosing-title {
  width: 160px;
}
.p-works-search-content-choosing .choosing-title .ttl {
  font-size: 1.2rem;
  font-weight: bold;
  color: #002660;
}
.p-works-search-content-choosing .choosing-detail {
  width: calc(100% - 160px);
}
.p-works-search-content-choosing .choosing-detail .name {
  font-size: 1.2rem;
  border-radius: 30px;
  display: block;
  padding: 6px 12px 8px 12px;
  position: relative;
}
.p-works-search-content-choosing .choosing-detail .name.name-series {
  background-color: #D6D6D6;
  color: #002660;
}
.p-works-search-content-choosing .choosing-detail .name.name-product {
  font-weight: bold;
  color: #fff;
  background-color: #5690B1;
  padding-right: 32px;
}
.p-works-search-content-choosing .choosing-detail .name .btn {
  top: 50%;
  right: 8px;
  margin-top: -8px;
  display: block;
  position: absolute;
  width: 16px;
  height: 16px;
  border-radius: 16px;
  cursor: pointer;
}
.p-works-search-content-choosing .choosing-detail .name .btn:hover {
  opacity: 0.75;
}
.p-works-search-content-choosing .choosing-detail .list {
  line-height: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.p-works-search-content-choosing .choosing-detail .list + .list {
  margin-top: 4px;
}
.p-works-search-content-choosing .choosing-reset {
  margin: 4px 0 -6px auto;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.p-works-search-content-choosing .choosing-reset .reset-button {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 4px;
}
.p-works-search-content-choosing .choosing-reset .reset-button .txt {
  color: #002660;
  text-decoration: underline;
  font-size: 1.2rem;
}
.p-works-search-content-choosing .choosing-reset .reset-button .btn {
  width: 16px;
  height: 16px;
  padding-top: 1px;
}
.p-works-search-content-choosing .choosing-reset .reset-button:hover {
  cursor: pointer;
}
.p-works-search-content-choosing .choosing-reset .reset-button:hover .txt {
  text-decoration: none;
}
.p-works-search-content-choosing .choosing-reset .reset-button:hover .btn {
  opacity: 0.75;
}
@media screen and (max-width: 800px) {
  .p-works-search-content-choosing {
    margin-top: 4px;
    padding: 8px;
    position: relative;
  }
  .p-works-search-content-choosing .choosing-title {
    width: 100%;
    padding-left: 8px;
  }
  .p-works-search-content-choosing .choosing-detail {
    width: 100%;
    max-height: 112px;
    overflow-y: scroll;
  }
  .p-works-search-content-choosing .choosing-detail .name {
    border-radius: 40px;
    padding: 10px 8px;
  }
  .p-works-search-content-choosing .choosing-detail .name.name-series {
    font-size: 1rem;
  }
  .p-works-search-content-choosing .choosing-detail .name.name-product {
    padding: 16px 40px 16px 8px;
  }
  .p-works-search-content-choosing .choosing-detail .name .btn {
    top: 50%;
    margin-top: -12px;
    width: 24px;
    height: 24px;
  }
  .p-works-search-content-choosing .choosing-detail .list {
    align-items: center;
  }
  .p-works-search-content-choosing .choosing-detail .list:first-child {
    margin-bottom: 8px;
  }
  .p-works-search-content-choosing .choosing-reset {
    margin: 2px 0 0 auto;
    position: absolute;
    top: 4px;
    right: 8px;
  }
  .p-works-search-content-choosing .choosing-reset .reset-button {
    gap: 3px;
  }
  .p-works-search-content-choosing .choosing-reset .reset-button .btn {
    width: 20px;
    height: 20px;
  }
}
@media screen and (max-width: 800px) {
  .p-works-search {
    padding: 32px 0;
  }
  .p-works-search-content {
    margin: 8px 0 24px 0;
  }
  .p-works-search-content-field {
    display: block;
  }
  .p-works-search-content-field .field-title {
    padding: 4px 8px;
    width: 100%;
    border-radius: 5px 5px 0 0;
  }
  .p-works-search-content-field .field-detail {
    width: 100%;
    padding: 4px 0;
  }
  .p-works-search-content-list:not(.-inline) {
    flex-wrap: wrap;
  }
  .p-works-search-content-list:not(.-inline) > li {
    width: calc(50% - 4px);
  }
  .p-works-search-content-list.-inline > li {
    display: inline-block;
  }
}

.p-works-archive {
  padding: 32px 64px 48px 64px;
}
@media screen and (min-width: 801px) and (max-width: 1400px) {
  .p-works-archive {
    padding-right: 24px;
    padding-left: 24px;
  }
}
.p-works-archive__header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-works-archive__header .select {
  width: calc(100% - 320px);
}
@media screen and (min-width: 801px) and (max-width: 860px) {
  .p-works-archive__header .select {
    width: 100%;
  }
}
.p-works-archive__header .select select {
  font-size: 1.6rem;
  padding: 5px 16px 4px 16px;
  margin-bottom: 8px;
}
.p-works-archive__header .button {
  width: 186px;
}
.p-works-archive__header .text {
  font-size: 1.4rem;
  color: #002660;
}
.p-works-archive__header .text b {
  font-size: 142%;
  font-weight: 700;
}
.p-works-archive__detail {
  margin-top: 28px;
  overflow-y: auto;
  height: 500px;
}
.p-works-archive-table {
  width: 100%;
}
.p-works-archive-table th, .p-works-archive-table td {
  border: none;
}
.p-works-archive-table th {
  background-color: #5690B1;
  color: #fff;
  position: sticky;
  top: 0;
  padding: 2px 16px;
  z-index: 1;
}
.p-works-archive-table td {
  background-color: #fff;
  padding: 8px 16px;
}
.p-works-archive-table td:first-of-type {
  font-weight: 700;
}
.p-works-archive-table td > a {
  text-decoration: underline;
}
.p-works-archive-table td > a:hover {
  text-decoration: none;
}
.p-works-archive-list {
  margin: 32px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
}
.p-works-archive-list > li {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  line-height: 1.4;
}
.p-works-archive-list > li > .title {
  width: 49.6031746032%;
  font-size: 1.8rem;
  font-weight: 700;
  padding: 12px;
  background-color: #E5EEF7;
  color: #002660;
  display: flex;
  align-items: center;
}
.p-works-archive-list > li > .text {
  width: 25.1984126984%;
  padding: 8px 12px;
  padding-right: 22px;
  background-color: #F6F9FC;
  display: flex;
  align-items: center;
  position: relative;
  font-size: 1.4rem;
}
.p-works-archive-list > li > .text + .text {
  padding-right: 12px;
  padding-left: 22px;
}
.p-works-archive-list > li > .text + .text::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 36px);
  left: -40px;
  border-right: 1px #CEDFEF solid;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
  width: 44px;
  height: 44px;
}
@media screen and (max-width: 800px) {
  .p-works-archive-list {
    margin: 16px 0;
  }
  .p-works-archive-list > li .title {
    width: 100%;
    padding: 8px;
    font-size: 1.4rem;
  }
  .p-works-archive-list > li .text {
    padding: 8px;
    padding-right: 16px;
    width: 50%;
    font-size: 1.1rem;
  }
  .p-works-archive-list > li .text + .text {
    padding-right: 8px;
    padding-left: 16px;
  }
  .p-works-archive-list > li .text + .text::before {
    top: calc(50% - 29px);
    left: -30px;
    width: 36px;
    height: 36px;
  }
}
@media screen and (max-width: 800px) {
  .p-works-archive {
    padding: 16px 0;
  }
  .p-works-archive__header .select {
    width: 100%;
    margin-bottom: 8px;
  }
  .p-works-archive__header .select select {
    width: 100%;
    padding: 4px 2px 4px 8px;
  }
  .p-works-archive__header .button {
    width: 60%;
  }
  .p-works-archive__header .text {
    width: 40%;
    font-size: 1.2rem;
  }
  .p-works-archive__detail {
    margin-top: 8px;
    height: 300px;
  }
  .p-works-archive-table {
    line-height: 1.4;
    font-size: 1.1rem;
  }
  .p-works-archive-table th {
    padding: 2px 8px;
  }
  .p-works-archive-table td {
    padding: 6px;
    vertical-align: middle;
  }
}

.p-works-annotation {
  text-align: right;
  line-height: 1.6;
  margin-top: 8px;
}
@media screen and (max-width: 800px) {
  .p-works-annotation {
    font-size: 1.2rem;
    text-align: left;
  }
}

.p-about-future {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 40px 0;
}
.p-about-future > li {
  width: calc(50% - 18px);
  padding: 32px;
  margin: 20px 0;
}
.p-about-future > li .text {
  width: 100%;
  font-size: 1.8rem;
  order: 1;
}
.p-about-future > li .title {
  font-size: 2.2rem;
  font-weight: 700;
  width: 100%;
  order: 0;
  text-align: center;
}
.p-about-future > li .title b {
  font-size: 145.45%;
  color: #fff;
  display: inline-block;
  padding: 0 8px;
  margin-right: 8px;
}
.p-about-future > li.is-red {
  background-color: #F9EBEB;
}
.p-about-future > li.is-red .title {
  color: #AC0000;
}
.p-about-future > li.is-red .title b {
  background-color: #AC0000;
}
.p-about-future > li.is-blue {
  background-color: #EDFAFB;
}
.p-about-future > li.is-blue .title {
  color: #005BAC;
}
.p-about-future > li.is-blue .title b {
  background-color: #005BAC;
}
.p-about-future > li.is-green {
  background-color: #ECF8EB;
}
.p-about-future > li.is-green .title {
  color: #10A800;
}
.p-about-future > li.is-green .title b {
  background-color: #10A800;
}
.p-about-future > li.is-yellow {
  background-color: #FDF6EF;
}
.p-about-future > li.is-yellow .title {
  color: #DE883C;
}
.p-about-future > li.is-yellow .title b {
  background-color: #DE883C;
}
@media screen and (max-width: 800px) {
  .p-about-future {
    margin: 8px 0;
  }
  .p-about-future > li {
    margin: 8px 0;
    width: 100%;
    padding: 16px;
  }
  .p-about-future > li .text {
    font-size: 1.6rem;
    margin-top: 4px;
  }
  .p-about-future > li .title {
    font-size: 1.8rem;
  }
}

.p-company-banner {
  width: 300px;
  display: block;
  position: relative;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.16);
}
.p-company-banner.-blank::after {
  position: absolute;
  content: "";
  top: 8px;
  right: 8px;
  display: block;
  background: transparent url("/assets/img/common/icon_blank-blue.svg") left top no-repeat;
  width: 20px;
  height: 20px;
}

.p-recruit-content {
  width: calc(50% - 30px) !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-recruit-content .image {
  width: 100%;
  margin-bottom: 16px;
  order: 0;
}
.p-recruit-content .title {
  width: calc(100% - 320px);
  color: #002660;
  font-size: 3.2rem;
  font-weight: 700;
  order: 1;
}
.p-recruit-content .banner {
  width: 320px;
  order: 2;
}
.p-recruit-content .banner.is-mynavi {
  width: 195px;
}
.p-recruit-content .banner a {
  display: block;
}
@media screen and (max-width: 800px) {
  .p-recruit-content {
    margin: 0 auto;
    width: 100% !important;
  }
  .p-recruit-content + .p-recruit-content {
    margin-top: 40px !important;
  }
  .p-recruit-content .image {
    width: 50%;
    margin: 16px 0;
  }
  .p-recruit-content .title {
    width: calc(50% - 24px);
    font-size: 2.6rem;
    align-self: center;
  }
  .p-recruit-content .banner {
    width: 100%;
  }
  .p-recruit-content .banner.is-mynavi {
    width: auto;
    margin: 0 auto;
  }
}

.p-download-catalog {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 476px;
  margin: 0 auto;
}
.p-download-catalog__text {
  width: 224px;
  order: 1;
}
.p-download-catalog__text .title {
  font-size: 1.8rem;
  color: #002660;
  text-align: center;
  padding: 12px 0 18px 0;
}
.p-download-catalog__text .link {
  margin-top: 20px;
}
.p-download-catalog__text .link .ttl {
  font-size: 1.4rem;
  border-left: 4px #005AB4 solid;
  font-weight: 700;
  padding-left: 12px;
}
.p-download-catalog__text .link .btn {
  margin-top: 8px;
}
.p-download-catalog__text .link .btn a + a {
  margin-top: 4px;
}
.p-download-catalog__image {
  width: 240px;
  order: 0;
}
.p-download-catalog__image > img {
  border: 1px #5690B1 solid;
}
.p-download-catalog.-sub {
  width: 100%;
  max-width: 168px;
}
.p-download-catalog.-sub .p-download-catalog__text {
  width: 100%;
}
.p-download-catalog.-sub .p-download-catalog__text .title {
  font-size: 1.6rem;
  padding: 0;
  min-height: 48px;
}
.p-download-catalog.-sub .p-download-catalog__text .image {
  order: 0;
}
.p-download-catalog.-sub .p-download-catalog__text .image > img {
  border: 1px #5690B1 solid;
}
.p-download-catalog.-sub .p-download-catalog__text .button {
  margin: 8px 0;
}
.p-download-catalog.-sub .p-download-catalog__text .link {
  margin-top: 0;
}
@media screen and (max-width: 800px) {
  .p-download-catalog {
    justify-content: center;
    width: 80%;
    margin-bottom: 24px;
  }
  .p-download-catalog__text {
    width: 100%;
    order: 1;
  }
  .p-download-catalog__text .title {
    font-size: 1.6rem;
    padding: 8px 0;
  }
  .p-download-catalog__text .link {
    margin-top: 8px;
  }
  .p-download-catalog__image {
    width: 240px;
    order: 0;
  }
  .p-download-catalog__image > img {
    border: 1px #5690B1 solid;
  }
  .p-download-catalog.-sub .p-download-catalog__text .button {
    margin: 4px 0;
  }
  .p-download-catalog.-sub .p-download-catalog__text .link {
    margin-top: 0;
  }
  .p-download-catalog.-sub .p-download-catalog__text .link .btn {
    margin-top: 4px;
  }
}

@media screen and (min-width: 801px) {
  .p-download-catalog-positioning {
    margin-right: -20px;
    margin-left: 42px;
  }
}
.p-download-products-list {
  margin: 40px -21px;
  display: flex;
  flex-wrap: wrap;
}
.p-download-products-list > li {
  width: calc(20% - 42px);
  margin: 0 21px;
}
@media screen and (max-width: 800px) {
  .p-download-products-list {
    margin: 24px -8px;
  }
  .p-download-products-list > li {
    width: calc(50% - 16px);
    margin: 0 8px;
  }
}

.p-downlooad-kb {
  width: 100%;
  font-size: 1.1rem;
  line-height: 1.1;
  color: #999;
  text-align: center;
}
@media screen and (max-width: 800px) {
  .p-downlooad-kb {
    font-size: 1rem;
  }
}

.p-download-table {
  font-size: 1.5rem;
  line-height: 1.4;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-download-table {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}
.p-download-table th, .p-download-table td {
  padding: 8px 4px;
  vertical-align: middle;
}
.p-download-table th {
  padding: 8px 2px;
}
.p-download-table td {
  text-align: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.p-download-table .c-column-box {
  justify-content: center;
  margin: 0 -0.8%;
}
.p-download-table .c-column-box > .item-box {
  margin: 0 0.8% !important;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.p-download-table .p-download-small-button {
  width: 58px;
  color: #fff;
  font-weight: 700;
  font-size: 1.2rem;
  text-align: center;
  display: inline-block;
  padding: 4px 1px;
}
.p-download-table .p-download-small-button.-color-blue {
  background-color: #005AB4;
}
.p-download-table .p-download-small-button.-color-navy {
  background-color: #002660;
}
.p-download-table .p-download-small-button.-color-red {
  background-color: #AC0000;
}
.p-download-table .p-download-small-button .c-icon-image {
  display: block;
}
.p-download-table .p-download-small-button:hover {
  opacity: 0.8;
}
@media screen and (max-width: 800px) {
  .p-download-table {
    font-size: 1.3rem;
  }
  .p-download-table .p-download-small-button {
    font-size: 1rem;
  }
}

.c-modal-box .p-download-small-button {
  width: 80px;
}

.p-contact-privacy {
  margin: 40px 0;
  height: 340px;
  overflow-y: scroll;
  padding: 32px;
  border: 1px #999 solid;
}

.p-contact-agree {
  margin: 40px auto;
  text-align: center;
}
@media screen and (max-width 800px) {
  .p-contact-agree {
    margin: 24px 0;
    text-align: left;
  }
}

.p-contact-consent {
  margin: 40px 0;
  background-color: #f5f5f5;
  padding: 24px;
  text-align: center;
}
.p-contact-consent .checkbox input {
  margin-right: 12px;
  width: 24px;
  height: 24px;
}

.u-clearfix::after {
  content: "";
  clear: both;
  display: block;
}

.u-text-hidden {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}

.u-flex {
  display: flex;
  flex-wrap: wrap;
}
.u-flex.-j-between {
  justify-content: space-between;
}
.u-flex.-direction-columun {
  flex-direction: column;
}

@media screen and (min-width: 801px) {
  .u-order0-pc {
    order: -1;
    margin-top: 0;
  }
}
.u-inline-block {
  display: inline-block;
}

@media screen and (max-width: 800px) {
  .u-nowrap-sp {
    white-space: nowrap;
  }
}

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

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

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

.u-text-big {
  font-size: 112.5%;
}

.u-text-small {
  font-size: 75%;
}

.u-text-bold {
  font-weight: 700;
}

.u-bg-color-light {
  background-color: #E5EEF7;
}

.u-color-white {
  color: #fff;
}

.u-color-gray {
  color: #999;
}

.u-color-red {
  color: #AC0000;
}

.u-color-accent {
  color: #002660;
}

.u-color-accent2 {
  color: #005AB4;
}

.u-link-text {
  text-decoration: underline;
}
@media screen and (min-width: 801px) {
  .u-link-text:hover {
    text-decoration: none;
  }
}

.u-margin-0 {
  margin: 0;
}

.u-margin-side-0 {
  margin-right: 0;
  margin-left: 0;
}

.u-margin-bottom-0 {
  margin-bottom: 0;
}

.u-margin-top-0 {
  margin-top: 0;
}

.u-padding-0 {
  padding: 0;
}

.u-padding-bottom-0 {
  padding-bottom: 0;
}

.u-bg-gray {
  background-color: #f5f5f5;
}

.u-fixed {
  position: fixed;
  top: 0;
  left: 0;
}

.u-sp-height {
  padding-top: 54px;
}