@charset "utf-8";
html {
  font-size: 62.5%;
}
body, input, select, textarea, button {
  font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
}
body {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
  background-color: #fff;
  position: relative;
  color: #333;
  font-size: 10px;
  font-size: 1.0rem;
  line-height: 1.75;
  width: 100%;
  -webkit-text-size-adjust: 100%; /* sp 横表示対応 */
  word-wrap: break-word; /* 英文自動折り返し */
  overflow-x: hidden;
  overflow-y: auto;
}
* {
  scroll-behavior: smooth;
}
*, *:before, *:after {
  box-sizing: border-box;
}
main {
  display: block;
}
fieldset {
  display: contents;
}
label {
  display: inline-block;
}
a[href^="tel:"]:hover {
  cursor: default;
  opacity: 1.0;
}
a {
  opacity: 1;
  text-decoration: none;
  color: #333;
}
a:not(#pageTop) {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
}
img, iframe, video {
  max-width: 100%;
  vertical-align: bottom;
}
img {
  height: auto;
}
table th, table td {
  word-break: break-all;
}
figure a {
  display: inline-block;
}
/** ===========================================================================
 *  common
 * ========================================================================= */
/** display
 * ========================================================================= */
.display--none {
  display: none;
}
.display--block {
  display: block;
}
.display--inline-block {
  display: inline-block;
}
.display--inline {
  display: inline;
}
.display--flex {
  display: flex;
}
@media screen and (max-width: 1023px) {
  .display--block__max-w1023 {
    display: block;
  }
  .display--inline__max-w1023 {
    display: inline;
  }
  .display--inline-block__max-w1023 {
    display: inline-block;
  }
  .display--none__max-w1023 {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .display--block__max-w767 {
    display: block;
  }
  .display--inline__max-w767 {
    display: inline;
  }
  .display--inline-block__max-w767 {
    display: inline-block;
  }
  .display--none__max-w767 {
    display: none;
  }
}
@media screen and (max-width: 479px) {
  .display--block__max-w479 {
    display: block;
  }
  .display--inline__max-w479 {
    display: inline;
  }
  .display--inline-block__max-w479 {
    display: inline-block;
  }
  .display--none__max-w479 {
    display: none;
  }
}
/** width
 * ========================================================================= */
.width--100 {
  width: 100%;
}
.width--75 {
  width: 75%;
}
.width--50 {
  width: 50%;
}
.width--25 {
  width: 25%;
}
.width--0 {
  width: 0;
}
.width--2_5em {
  width: 2.5em;
}
.width--5em {
  width: 5em;
}
.width--7_5em {
  width: 7.5em;
}
.width--10em {
  width: 10em;
}
.width--12_5em {
  width: 12.5em;
}
.width--15em {
  width: 15em;
}
.width--17_5em {
  width: 17.5em;
}
.width--20em {
  width: 20em;
}
.width--22_5em {
  width: 22.5em;
}
.width--25em {
  width: 25em;
}
/** margin
 * ========================================================================= */
/** top */
.margin-top--5 {
  margin-top: 5px !important;
}
.margin-top--10 {
  margin-top: 10px !important;
}
.margin-top--20 {
  margin-top: 20px !important;
}
.margin-top--30 {
  margin-top: 30px !important;
}
.margin-top--40 {
  margin-top: 40px !important;
}
.margin-top--50 {
  margin-top: 50px !important;
}
.margin-top--60 {
  margin-top: 60px !important;
}
.margin-top--auto {
  margin-top: auto !important;
}
/** bottom */
.margin-bottom--5 {
  margin-bottom: 5px !important;
}
.margin-bottom--10 {
  margin-bottom: 10px !important;
}
.margin-bottom--20 {
  margin-bottom: 20px !important;
}
.margin-bottom--30 {
  margin-bottom: 30px !important;
}
.margin-bottom--40 {
  margin-bottom: 40px !important;
}
.margin-bottom--50 {
  margin-bottom: 50px !important;
}
.margin-bottom--60 {
  margin-bottom: 60px !important;
}
.margin-bottom--auto {
  margin-bottom: auto !important;
}
/** right */
.margin-right--auto {
  margin-right: auto !important;
}
/** left */
.margin-left--auto {
  margin-left: auto !important;
}
/** title
 * ========================================================================= */
.title-type01 {
  display: flex;
  align-items: baseline;
  padding-top: .75em;
  padding-bottom: .75em;
  padding-left: .755em;
  position: relative;
  color: #1754A5;
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .05em;
}
.title-type01:not(.title-type01--center)::before {
  content: "";
  display: block;
  width: 2.5em;
  height: 2.5em;
  background-color: #E7EEF6;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.bg--lightblue .title-type01::before {
  background-color: #fff;
}
.title-type01-inner {
  position: relative;
  z-index: 2;
}
.title-type01-eng {
  display: inline-block;
  padding-left: 1.5em;
  position: relative;
  margin-left: 40px;
  font-size: 20px;
  font-size: 2.0rem;
}
.title-type01-eng::before {
  content: "";
  display: block;
  width: 1px;
  height: 1em;
  background-color: #1754A5;
  position: absolute;
  top: .15em;
  left: 0;
  transform: rotate(24deg);
}
.title-type01:not(:last-child) {
  margin-bottom: 40px;
}
.title-type01--center {
  justify-content: center;
  padding-top: 0;
  padding-bottom: 0;
}
.title-type02 {
  padding-left: .5em;
  border-left: 5px solid #1754A5;
  color: #1754A5;
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 700;
  letter-spacing: .05em;
}
.title-type02:not(:last-child) {
  margin-bottom: calc(50px - .375em);
}
.title-type03 {
  color: #1754A5;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: .05em;
}
.title-type03:not(:last-child) {
  margin-bottom: calc(30px - .375em);
}
@media screen and (max-width: 767px) {
  .title-type01 {
    margin-left: -.755em;
    font-size: 36px;
    font-size: 3.6rem;
  }
  .title-type01-eng {
    margin-left: 20px;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .title-type02 {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .title-type03 {
    font-size: 20px;
    font-size: 2.0rem;
  }
}
/** text
 * ========================================================================= */
.text {
  font-size: 16px;
  font-size: 1.6rem;
}
.text:not(:first-child) {
  margin-top: -.375em;
}
.text a {
  color: #1a73e8;
}
/** color */
.color--white {
  color: #fff;
}
/** text-align */
.text-align--center {
  text-align: center !important;
}
.text-align--right {
  text-align: right !important;
}
.text-align--left {
  text-align: left !important;
}
.text-align--justify {
  text-align-last: justify !important;
  text-justify: inter-ideograph;
}
@media screen and (max-width: 767px) {
  .text-align--center--w767 {
    text-align: center !important;
  }
  .text-align--right--w767 {
    text-align: right !important;
  }
  .text-align--left--w767 {
    text-align: left !important;
  }
  .text-align--justify--w767 {
    text-align-last: justify !important;
    text-justify: inter-ideograph;
  }
}
/** font-weight */
.font-weight--300 {
  font-weight: 300;
}
.font-weight--400 {
  font-weight: 400;
}
.font-weight--500 {
  font-weight: 500;
}
.font-weight--700 {
  font-weight: 700;
}
.font-weight--900 {
  font-weight: 900;
}
/** vertical-align */
.vertical-align--top {
  vertical-align: top;
}
.vertical-align--middle {
  vertical-align: middle;
}
.vertical-align--bottom {
  vertical-align: bottom;
}
.vertical-align--baseline {
  vertical-align: baseline;
}
.vertical-align--super {
  vertical-align: super;
}
.vertical-align--sub {
  vertical-align: sub;
}
.vertical-align--text-top {
  vertical-align: text-top;
}
.vertical-align--text-bottom {
  vertical-align: text-bottom;
}
.vertical-align--length {
  vertical-align: length;
}
/** flex */
.justify-content--center {
  justify-content: center;
}
.justify-content--flex-start {
  justify-content: flex-start;
}
.justify-content--flex-end {
  justify-content: flex-end;
}
.justify-content--space-around {
  justify-content: space-around;
}
.justify-content--space-between {
  justify-content: space-between;
}
.align-items--baseline {
  align-items: baseline;
}
.align-items--center {
  align-items: center;
}
.align-items--flex-start {
  align-items: flex-start;
}
.align-items--flex-end {
  align-items: flex-end;
}
.align-items--stretch {
  align-items: stretch;
}
/** link
 * ========================================================================= */
.link {
  display: inline-block;
  color: #1a73e8;
}
/** more
 * ========================================================================= */
.more {
  text-align: right;
}
.more:not(:first-child) {
  margin-top: 35px;
}
.more a {
  color: #1754A5;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .05em;
}
/** container
 * ========================================================================= */
.container, .container-fulid {
  width: 100%;
  padding-right: 30px;
  padding-left: 30px;
  margin-right: auto;
  margin-left: auto;
}
.container {
  max-width: 1140px;
}
/** bg
 * ========================================================================= */
.bg--lightblue {
  background-color: #E7EEF6;
}
.container .bg--lightblue {
  position: relative;
}
.container .bg--lightblue::before, .container .bg--lightblue::after {
  content: "";
  display: block;
  width: calc(50vw - 50%);
  height: 100%;
  background-color: #E7EEF6;
  position: absolute;
  top: 0;
}
.container .bg--lightblue::before {
  right: 100%;
}
.container .bg--lightblue::after {
  left: 100%;
}
/** パンくず
 * ========================================================================= */
.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  padding-top: 20px;
  font-size: 12px;
  font-size: 1.2rem;
}
.breadcrumb > * {
  display: block;
  position: relative;
}
.breadcrumb > *:not(:first-child) {
  padding-left: 3.15em;
}
.breadcrumb > *:not(:first-child)::before {
  content: "";
  display: block;
  width: 1px;
  height: 1em;
  background-color: #898989;
  position: absolute;
  top: .15em;
  left: 1.65em;
  transform: rotate(24deg);
}
.breadcrumb * {
  color: #898989;
}
.breadcrumb strong {
  color: #1754A5;
}
.breadcrumb br {
  display: none;
}
/** table
 * ========================================================================= */
.table {
  width: 100%;
  border-top: 1px solid #ccc;
  font-size: 16px;
  font-size: 1.6rem;
}
.table > tbody > tr > * {
  padding: calc(20px - .375em) 20px;
  border-bottom: 1px solid #ccc;
}
.table > tbody > tr > th {
  background-color: #E7EEF6;
  text-align: left;
  font-weight: 700;
}
.table-layout--fixed {
  table-layout: fixed;
}
.table-scroll-wrapper {
  overflow: auto;
  padding-right: 30px;
  padding-left: 30px;
  margin-right: -30px;
  margin-left: -30px;
}
.position--sticky {
  position: sticky;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .table-wrapper {
    margin-left: -30px;
    margin-right: -30px;
  }
  .table, .table > tbody, .table > tbody > tr, .table > tbody > tr > * {
    display: block;
    width: 100%;
  }
  .table {
    width: auto;
    margin-right: -30px;
    margin-left: -30px;
  }
  .table > tbody > tr > * {
    padding-right: 30px;
    padding-left: 30px;
  }
  .table > tbody > tr > th {
    border-bottom: none;
  }
}
/** form table
 * ========================================================================= */
.form-table {
  width: 100%;
  table-layout: auto;
  font-size: 16px;
  font-size: 1.6rem;
}
.form-table > tbody > tr > * {
  vertical-align: middle;
}
.form-table > tbody > tr > th {
  width: 220px;
}
/** btn
 * ========================================================================= */
.btn, .card-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  padding: 0;
  border-style: solid;
  border-color: #1754A5;
  position: relative;
  overflow: hidden;
  text-align: center;
  transition: color 1s ease;
  cursor: pointer;
}
.btn-inner, .card-btn-inner {
  width: 100%;
  position: relative;
  z-index: 2;
}
.btn::before, .btn::after, .card-btn::before, .card-btn::after {
  content: "";
  display: block;
  width: 200%;
  height: 50%;
  position: absolute;
  left: -50%;
  transform-origin: right;
  transition: all 1s ease;
  transition-property: transform;
}
.btn::before, .card-btn::before {
  top: 0;
  transform: scaleX(0) skewX(45deg);
}
.btn::after, .card-btn::after {
  bottom: 0;
  transform: scaleX(0) skewX(-45deg);
}
.btn:hover, .card-btn:hover {
  opacity: 1;
}
.btn:hover::before, .btn:hover::after, .card-btn:hover::before, .card-btn:hover::after, a:hover span.card-btn::before, a:hover span.card-btn::after {
  transform-origin: left center;
}
.btn:hover::before, .card-btn:hover::before, a:hover span.card-btn::before {
  transform: scaleX(1) skewX(45deg);
}
.btn:hover::after, .card-btn:hover::after, a:hover span.card-btn::after {
  transform: scaleX(1) skewX(-45deg);
}
.btn {
  width: 280px;
  background-color: #1754A5;
  border-width: 2px;
  border-radius: 4px;
  color: #fff;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
}
.btn-inner {
  padding: calc(18px - .375em) 30px;
}
.btn::before, .btn::after {
  background-color: #fff;
}
.btn-inner::before {
  content: "";
  display: block;
  width: 2em;
  height: 2em;
  background-color: #1754A5;
  position: absolute;
  top: 50%;
  left: -3em;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: all 1s ease;
}
.btn:hover {
  color: #1754A5;
}
.btn:hover .btn-inner::before {
  left: 0;
}
.btn--white {
  background-color: #fff;
  color: #1754A5;
}
.btn--white::before, .btn--white::after {
  background-color: #1754A5;
}
.btn--white .btn-inner::before {
  background-color: #fff;
}
.btn--white:hover {
  color: #fff;
}
.btn--back::before, .btn--back::after {
  transform-origin: left;
}
.btn--back::before {
  transform: scaleX(0) skewX(-45deg);
}
.btn--back::after {
  transform: scaleX(0) skewX(45deg);
}
.btn--back .btn-inner::before {
  left: auto;
  right: -3em;
  transform: translate(50%, -50%) rotate(45deg);
}
.btn--back:hover::before, .btn--back:hover::after {
  transform-origin: right;
}
.btn--back:hover::before {
  transform: scaleX(1) skewX(-45deg);
}
.btn--back:hover::after {
  transform: scaleX(1) skewX(45deg);
}
.btn--back:hover .btn-inner::before {
  left: auto;
  right: 0;
}
.card-btn {
  width: 240px;
  background-color: #fff;
  border-width: 1px;
  border-radius: calc(.75em + 15px);
  color: #1754A5;
  font-size: 16px;
  font-size: 1.6rem;
}
.card-btn--large {
  width: 320px;
}
.card-btn-inner {
  padding: calc(15px - .375em) 30px;
}
.card-btn::before, .card-btn::after {
  background-color: #1754A5;
}
.card-btn:hover, a:hover span.card-btn {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .btn {
    font-size: 20px;
    font-size: 2.0rem;
  }
  .card-btn {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
/** row
 * ========================================================================= */
.row, .row--reverse {
  display: flex;
  flex-wrap: wrap;
  margin: -5px -20px;
}
.row--reverse {
  flex-direction: row-reverse;
}
.row > *, .row--reverse > * {
  padding: 5px 20px;
}
.row--gx15 {
  margin-right: -15px;
  margin-left: -15px;
}
.row--gx15 > * {
  padding-right: 15px;
  padding-left: 15px;
}
.row--gy20 {
  margin-top: -20px;
  margin-bottom: -20px;
}
.row--gy20 > * {
  padding-top: 20px;
  padding-bottom: 20px;
}
.col1 {
  width: 100%;
}
.col2 {
  width: 50%;
}
.col3 {
  width: 33.333%;
}
.col4 {
  width: 25%;
}
@media screen and (max-width: 1023px) {
  .col1--w1023 {
    width: 100%;
  }
  .col2--w1023 {
    width: 50%;
  }
  .col3--w1023 {
    width: 33.333%;
  }
}
@media screen and (max-width: 767px) {
  .col1--w767 {
    width: 100%;
  }
  .col2--w767 {
    width: 50%;
  }
  .col3--w767 {
    width: 33.333%;
  }
}
/** icon
 * ========================================================================= */
.icon {
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 180px;
  height: 180px;
  background-color: #E7EEF6;
  border-radius: 50%;
  margin-right: auto;
  margin-left: auto;
  color: #1754A5;
  font-size: 90px;
}
.bg--lightblue .icon {
  background-color: #fff;
}
.icon:not(:last-child) {
  margin-bottom: 20px;
}
/** card
 * ========================================================================= */
.card {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: 100%;
}
a.card:hover {
  opacity: 1;
}
.card-thumbnail {
  overflow: hidden;
}
.card-thumbnail img {
  width: 100%;
  transition: .3s;
}
a.card:hover .card-thumbnail img {
  transform: scale(1.1);
}
.card-thumbnail:not(:last-child) {
  margin-bottom: 30px;
}
.card-title {
  color: #1754A5;
  font-weight: 700;
}
.card-title:not(:first-child) {
  margin-top: -.375em;
}
.card-text {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0;
}
.card-text:not(:last-child) {
  margin-bottom: calc(30px - .375em);
}
.card-link {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: auto;
}
.card-link-btn {
  width: 290px;
}
.card--type01 .card-title {
  font-size: 28px;
  font-size: 2.8rem;
}
.card--type01 .card-title:not(:last-child) {
  margin-bottom: calc(15px - .375em);
}
.card--type02 .card-title {
  font-size: 24px;
  font-size: 2.4rem;
}
.card--type02 .card-title:not(:last-child) {
  margin-bottom: calc(25px - .375em);
}
.card--type03 {
  padding: 25px 30px;
  background-color: #E7EEF6;
}
.card--type03 dt {
  color: #1754A5;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
}
.card--type03 dd {
  font-size: 16px;
  font-size: 1.6rem;
}
.card--type03 dt:not(:first-child) {
  margin-top: .5em;
}
@media screen and (max-width: 767px) {
  .card-thumbnail {
    margin-left: -30px;
    margin-right: -30px;
  }
}
/** list */
.cardlist-group {
  display: flex;
  flex-wrap: wrap;
  margin: -30px -20px;
}
.cardlist-group-item {
  display: flex;
  padding: 30px 20px;
}
.cardlist-group-item--col2 {
  width: 50%;
}
.cardlist-group-item--col3 {
  width: 33.333%;
}
@media screen and (max-width: 1023px) {
  .cardlist-group-item--col3 {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .cardlist-group-item {
    width: 100%;
  }
}
/** tab
 * ========================================================================= */
.tab-input {
  display: none;
}
.tab-header {
  border-bottom: 2px solid #1754A5;
  position: sticky;
  top: 72px;
  z-index: 999;
}
.tab-header-group {
  display: flex;
}
.tab-header-group-item {
  display: flex;
  flex: 1 1 auto;
}
.tab-header-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 60px;
  padding: 5px;
  background-color: #E7EEF6;
  text-align: center;
  color: #1754A5;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
  cursor: pointer;
  transition: .3s;
}
#tab_regular:checked ~ .tab-header .tab-header-btn[for="tab_regular"], #tab_contract:checked ~ .tab-header .tab-header-btn[for="tab_contract"], #tab_part-time:checked ~ .tab-header .tab-header-btn[for="tab_part-time"] {
  background-color: #1754A5;
  color: #fff;
}
.tab-body {
  display: flex;
  position: relative;
  margin-right: -30px;
  margin-left: -30px;
  margin-bottom: -10px;
  overflow: hidden;
}
.tab-body::before, .tab-body::after {
  content: "";
  display: block;
  width: 20px;
  height: 100%;
  position: absolute;
  top: 0;
}
.tab-body::before {
  background: linear-gradient(to right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
  left: 0;
}
.tab-body::after {
  background: linear-gradient(to left, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
  right: 0;
}
.tab-section {
  width: 100%;
  padding: 50px 30px 10px;
  flex-shrink: 0;
  overflow: hidden;
  transition: .3s;
}
.tab-input:nth-of-type(1):checked ~ .tab-body .tab-section:first-child {
  margin-left: 0;
}
.tab-input:nth-of-type(2):checked ~ .tab-body .tab-section:first-child {
  margin-left: -100%;
}
.tab-input:nth-of-type(3):checked ~ .tab-body .tab-section:first-child {
  margin-left: -200%;
}
@media screen and (max-width: 767px) {
  .tab-header {
    margin-right: -30px;
    margin-left: -30px;
    top: 50px;
  }
  .tab-header-btn {
    height: 35px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .tab-section {
    height: 0;
    padding-top: 30px;
  }
  #tab_regular:checked ~ .tab-body #tabSection_regular, #tab_contract:checked ~ .tab-body #tabSection_contract, #tab_rart-time:checked ~ .tab-body #tabSection_part-time {
    height: auto;
  }
}
/** form
 * ========================================================================= */
.form-text {
  font-size: 16px;
  font-size: 1.6rem;
}
.form-text i {
  color: #ff0000;
  font-weight: 700;
}
.form-text:not(:last-child) {
  margin-bottom: calc(20px - .375em);
}
.form-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.form-label {
  padding: .5em;
}
.form-control[type="text"], .form-control[type="tel"], .form-control[type="email"], .form-control[type="date"], .form-control[type="password"], select.form-control, textarea.form-control {
  display: block;
  max-width: 100%;
  padding: .25em .5em;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-size: 16px;
}
.form-control[type="text"], .form-control[type="tel"], .form-control[type="email"], .form-control[type="date"], .form-control[type="password"], select.form-control {
  width: 410px;
}
select.form-control:invalid {
  color: #898989;
}
textarea.form-control {
  width: 100%;
}
.form-control:focus {
  background-image: none;
}
.form-postal-code[type] {
  width: 260px;
  margin-left: .5em;
}
.form-label {
  cursor: pointer;
}
.form-label--required {
  padding-right: .75em;
  position: relative;
}
.form-label--required::after {
  content: "*";
  position: absolute;
  right: 0;
  color: #ff0000;
}
.form-note {
  padding: .5em;
  color: #898989;
  font-size: 14px;
  font-size: 1.4rem;
}
.form-check-wrapper {
  margin-left: -1em;
}
.form-check {
  display: flex;
  align-items: center;
  margin-left: 1em;
}
.form-check--inline {
  display: inline-flex;
}
.form-check-input {
  margin: 0 .5em 0 0;
  cursor: pointer;
}
.form-check-label {
  cursor: pointer;
}
.form-privacy-text {
  text-align: center;
}
.form-privacy-text:not(:first-child) {
  margin-top: calc(50px - .25em);
}
.form-send {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
.form-send-group {
  display: flex;
  flex-wrap: wrap;
  margin: -10px -20px;
}
.form-send-group-item {
  padding: 10px 20px;
}
.form-send-btn {
  width: 420px;
}
/** confirm email match */
.js-confirm-email--error {
  margin-top: .25em;
  padding: .15em .5em;
  background-color: #dc3545;
  border-radius: .25em;
  position: absolute;
  color: #fff;
}
.js-confirm-email--error::before {
  content: "";
  display: block;
  width: .4em;
  height: .25em;
  border-bottom: .25em solid #dc3545;
  border-right: .2em solid transparent;
  border-left: .2em solid transparent;
  position: absolute;
  bottom: 100%;
  left: 2em;
}
@media screen and (max-width: 767px) {
  .form-table {
    width: auto;
  }
  .form-table > tbody > tr > th {
    width: 100%;
  }
}
/** worklist
 * ========================================================================= */
.worklist-group {
  display: flex;
  flex-wrap: wrap;
  margin: -20px;
}
.worklist-group-item {
  display: flex;
  width: 33.333%;
  padding: 20px;
}
.worklist-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 30px 20px;
  border-radius: 4px;
  box-shadow: 0 0 10px rgba(23, 84, 165, .2);
}
.worklist-title {
  margin-top: -.25em;
  color: #1754A5;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 700;
}
.worklist-title:not(:last-child) {
  margin-bottom: calc(30px - .25em);
}
.worklist-requirements {
  font-size: 16px;
  font-size: 1.6rem;
}
.worklist-requirements dl {
  display: flex;
}
.worklist-requirements dl:not(:first-child) {
  margin-top: calc(15px - .25em);
}
.worklist-requirements dl dt {
  flex-shrink: 0;
  width: 1em;
  margin-right: 10px;
  overflow: hidden;
  color: #1754A5;
}
.worklist-requirements dl dt i {
  text-indent: -9999px;
  position: relative;
}
.worklist-requirements dl dt i::before {
  width: 1em;
  position: absolute;
  left: 0;
  text-indent: 0;
  text-align: center;
}
.worklist-requirements:not(:last-child) {
  margin-bottom: 25px;
}
.worklist-tag:not(:last-child) {
  margin-bottom: 30px;
}
.worklist-tag-group {
  display: flex;
  flex-wrap: wrap;
  margin: -5px;
}
.worklist-tag-group-item {
  padding: 5px;
}
.worklist-tag-link {
  display: block;
  padding: calc(8px - .25em) 8px;
  background-color: #E7EEF6;
  font-size: 12px;
  font-size: 1.2rem;
}
.worklist-link {
  display: flex;
  justify-content: center;
  margin-top: auto;
}
@media screen and (max-width: 1023px) {
  .worklist-group-item {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .worklist-group-item {
    width: 100%;
  }
  .worklist-title {
    font-size: 20px;
    font-size: 2.0rem;
  }
  .worklist-requirements {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
/** developlist
 * ========================================================================= */
.developlist-group {
  display: flex;
  flex-wrap: wrap;
  margin: -25px -20px;
}
.developlist-group-item {
  display: flex;
  width: 33.333%;
  padding: 25px 20px;
}
.developlist-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0 20px 30px;
  box-shadow: 0 0 10px rgba(23, 84, 165, .2);
}
.developlist-card-thumbnail {
  margin-right: -20px;
  margin-left: -20px;
}
.developlist-card-thumbnail img {
  width: 100%;
}
.developlist-card-title {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  color: #1754A5;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
}
.developlist-card-title:not(:first-child) {
  margin-top: calc(30px - .25em);
}
.developlist-card-title:not(:last-child) {
  margin-bottom: calc(30px - .25em);
}
.developlist-card-text {
  margin-top: -.25em;
  font-size: 16px;
  font-size: 1.6rem;
}
.developlist-card-text:not(:last-child) {
  margin-bottom: calc(30px - .25em);
}
.developlist-card-link {
  display: flex;
  justify-content: center;
  margin-top: auto;
}
@media screen and (max-width: 1023px) {
  .developlist-group-item {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .developlist {
    margin-right: -30px;
    margin-left: -30px;
  }
  .developlist-group-item {
    width: 100%;
  }
  .developlist-card {
    padding-right: 30px;
    padding-left: 30px;
  }
  .developlist-card-thumbnail {
    margin-right: -30px;
    margin-left: -30px;
  }
}
/** wp pagenavi
 * ========================================================================= */
.wp-pagenavi {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: calc(50px - .5em);
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}
.wp-pagenavi span, .wp-pagenavi a {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 2em;
  min-height: 2em;
  padding: 0 .5em;
  border-radius: 1em;
  margin: .5em;
}
.wp-pagenavi a {
  background-color: #E7EEF6;
  color: #1754A5;
}
.wp-pagenavi span, .wp-pagenavi a:hover {
  background-color: #1754A5;
  color: #fff;
  opacity: 1;
}
.wp-pagenavi .extend {
  background: none;
  color: #1754A5;
}
/** recommend
 * ========================================================================= */
.recommends {
  display: flex;
  padding: 40px 20px;
  justify-content: center;
  background-color: #E7EEF6;
}
.post .recommends ul, .recommends ul {
  padding-left: 1.75em;
  margin-top: -.375em;
  margin-bottom: -.375em;
  font-size: 24px;
  font-size: 2.4rem;
}
.recommends ul li {
  position: relative;
}
.recommends ul li + li {
  margin-top: .5em;
}
.post .recommends ul li {
  list-style: none;
}
.recommends ul li::before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: -1.75em;
  color: #1754A5;
}
@media screen and (max-width: 767px) {
  .recommends {
    padding-right: 30px;
    padding-left: 30px;
    margin-right: -30px;
    margin-left: -30px;
  }
  .post .recommends ul, .recommends ul {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
/** flow
 * ========================================================================= */
.post .flow > ol, .flow > ol {
  font-size: 24px;
  font-size: 2.4rem;
}
.flow > ol {
  counter-reset: flow;
}
.flow > ol > li {
  counter-increment: flow;
  min-height: 2.08em;
  padding-left: 2.708em;
  position: relative;
  color: #1754A5;
  font-weight: 700;
  line-height: 2.08;
}
.flow > ol > li::before, .flow > ol > li:not(:last-child)::after {
  display: block;
  position: absolute;
}
.flow > ol > li::before {
  content: counter(flow);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.08em;
  height: 2.08em;
  background-color: #E7EEF6;
  border-radius: 50%;
  top: 0;
  left: 0;
  color: #1754A5;
  font-weight: 700;
}
.flow > ol > li:not(:last-child)::after {
  content: "";
  width: 10px;
  height: 8px;
  border-top: 8px solid #1754A5;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  left: 20px;
  top: calc((100% - 2.08em + 40px) / 2 + 2.08em);
  transform: translateY(-50%);
}
.flow > ol > li:not(:first-child) {
  margin-top: 40px;
}
.flow > ol > li > h3 {
  padding-left: 1.75em;
  position: relative;
  margin-top: -.25em;
}
.flow > ol > li > h3 > i, .flow > ol > li > i {
  width: 1.25em;
  text-align: center;
}
.flow > ol > li > i {
  margin-right: .25em;
}
.flow > ol > li > h3 > i {
  position: absolute;
  top: .25em;
  left: 0;
}
.flow > ol > li > h3:not(:last-child) {
  margin-bottom: calc(20px - .25em);
}
.flow > ol > li > p {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.75;
}
.post .flow > ol {
  padding-left: 0;
}
.post .flow > ol > li {
  list-style: none;
}
@media screen and (max-width: 767px) {
  .flow > ul {
    font-size: 20px;
    font-size: 2.0rem;
  }
}
/** slash list
 * ========================================================================= */
.slash-list {
  display: inline-flex;
  overflow: hidden;
}
.slash-list > ul {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0 !important;
  margin-left: -.5em;
}
.slash-list > ul > li {
  position: relative;
  margin-left: .5em;
  list-style: none !important;
  text-align: left;
}
.slash-list > ul > li:not(:first-child)::before {
  content: "/";
  position: absolute;
  left: -.5em;
}
/** iframe
 * ========================================================================= */
.iframe-wrapper {
  padding-bottom: 56.25%;
  position: relative;
}
.iframe-wrapper > iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/** news
 * ========================================================================= */
.news__list {
  font-size: 16px;
  font-size: 1.6rem;
}
.news__list__group-item {
  display: flex;
  padding: calc(20px - .25em) 20px;
  border-bottom: 1px solid #ccc;
}
.news__date {
  display: block;
  width: 5.5em;
  margin-right: 30px;
  font-weight: 700;
}
.news__category {
  margin-right: 30px;
}
.news__category__link {
  display: block;
  width: 120px;
  background-color: #898989;
  text-align: center;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
}
.news__category__link.is--news,
.news__category__link.is--product {
  background-color: #1754A5;
}
.news__category__link.is--exhibition {
  background-color: #AEC8E6;
}
.news__title {
  flex: 1 1 auto;
}
.news__title a {
  color: #1a73e8;
}
@media screen and (max-width: 767px) {
  .news__list__group-item {
    flex-wrap: wrap;
    padding-right: 30px;
    padding-left: 30px;
    margin-right: -30px;
    margin-left: -30px;
  }
  .news__date {
    margin-bottom: 5px;
  }
  .news__title {
    width: 100%;
  }
}
/** ===========================================================================
 *    header
 * ========================================================================= */
body {
  padding-top: 72px;
}
.header {
  display: flex;
  width: 100%;
  height: 72px;
  padding-top: 25px;
  padding-bottom: 25px;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
.header-container {
  display: flex;
  align-items: center;
}
.header-logo {
  display: block;
  margin-top: auto;
  margin-bottom: auto;
}
.header-logo-link {
  display: inline-block;
}
.ancher {
  position: relative;
  top: -72px;
  pointer-events: none;
  visibility: hidden;
}
@media screen and (max-width: 767px) {
  body {
    padding-top: 50px;
  }
  .header {
    height: 50px;
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .ancher {
    top: -50px;
  }
}
/** nav
 * ========================================================================= */
.nav {
  display: flex;
  padding-right: 390px;
  margin-left: auto;
}
.nav-toggle {
  display: none;
}
.nav-hamburger-btn {
  display: none;
  width: 50px;
  height: 50px;
  position: absolute;
  top: 0;
  right: 0;
}
.nav-hamburger-btn span {
  width: 50%;
  height: 1px;
  background-color: #ccc;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  transition: .3s;
}
.nav-hamburger-btn span:nth-child(1) {
  top: 33.333%;
}
.nav-hamburger-btn span:nth-child(2) {
  top: 50%;
}
.nav-hamburger-btn span:nth-child(3) {
  top: 66.667%;
}
.nav-toggle:checked ~ .nav-hamburger-btn span {
  top: 50%;
}
.nav-toggle:checked ~ .nav-hamburger-btn span:nth-child(1) {
  transform: rotate(765deg);
}
.nav-toggle:checked ~ .nav-hamburger-btn span:nth-child(2) {
  width: 0;
  opacity: 0;
}
.nav-toggle:checked ~ .nav-hamburger-btn span:nth-child(3) {
  transform: rotate(-765deg);
}
.nav-menu {
  padding-right: 40px;
  padding-left: 40px;
  margin-top: auto;
  margin-bottom: auto;
}
.nav-menu-group {
  display: flex;
  margin: -20px;
}
.nav-menu-group-item {
  padding: 20px;
}
.nav-menu-link {
  position: relative;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 700;
}
.nav-menu-link::before {
  content: "";
  display: block;
  width: 0;
  height: .15em;
  background-color: #1754A5;
  position: absolute;
  top: 100%;
  left: 0;
  transition: .3s;
}
.nav-menu-link:hover,
.nav-menu-link.current {
  color: #1754A5;
  opacity: 1;
}
.nav-menu-link:hover::before,
.nav-menu-link.current::before {
  width: 100%;
}
.nav-contact {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 390px;
  max-width: 100%;
  padding: 20px 30px;
  background-color: #1754A5;
  border-bottom-left-radius: 5px;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
}
.nav-contact--footer {
  z-index: 1;
}
.nav-contact-tel, .nav-contact-tel-link {
  color: #fff;
}
.nav-contact-tel {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 12px;
  font-size: 1.2rem;
}
.nav-contact-tel-link {
  display: inline-block;
  margin-bottom: calc(5px - .375em);
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}
.nav-contact-link {
  margin-left: 30px;
}
.nav-contact-link-btn {
  display: block;
  padding: calc(14px - .25em) 18px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  position: relative;
  overflow: hidden;
  color: #1754A5;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}
.nav-contact-link-btn::before {
  content: "";
  display: block;
  width: 0;
  height: 5px;
  background-color: #1754A5;
  transform: skewX(45deg);
  position: absolute;
  bottom: 0;
  left: -5px;
  transition: .3s;
}
.nav-contact-link-btn-inner {
  position: relative;
  padding-left: 1.5em;
}
.nav-contact-link-btn-inner i {
  height: 1em;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  line-height: 1;
  transition: .3s;
}
.nav-contact-link-btn-inner i.fa-paper-plane {
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 50%);
}
.nav-contact-link-btn:hover {
  opacity: 1;
}
.nav-contact-link-btn:hover::before {
  width: 100%;
}
.nav-contact-link-btn:hover i.fa-envelope {
  opacity: 0;
}
.nav-contact-link-btn:hover i.fa-paper-plane {
  opacity: 1;
  visibility: visible;
  transform: translate(-10%, -10%);
}
@media screen and (max-width: 1240px) {
  .nav, .nav-menu {
    padding-right: 0;
  }
  .nav-contact {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 0;
    position: fixed;
    top: auto;
    bottom: 0;
    right: 0;
    margin: 0;
  }
}
@media screen and (max-width: 1023px) {
  .nav-menu {
    padding-left: 20px;
  }
  .nav-menu-group {
    margin-right: -10px;
    margin-left: -10px;
  }
  .nav-menu-group-item {
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media screen and (max-width: 767px) {
  .nav-hamburger-btn {
    display: block;
  }
  .nav-menu {
    width: 100%;
    height: 0;
    padding: 0 20px;
    background-color: rgba(255, 255, 255, .9);
    position: absolute;
    top: 100%;
    left: 0;
    transition: .3s;
    overflow: hidden;
  }
  .nav-toggle:checked ~ .nav-menu {
    height: 100svh;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .nav-menu-group {
    flex-direction: column;
    margin-right: -20px;
    margin-left: -20px;
  }
  .nav-menu-group-item {
    border-bottom: 1px solid #ccc;
    padding: 0;
  }
  .nav-menu-link {
    display: block;
    padding: 10px 20px;
  }
  .nav-menu-link:hover,
  .nav-menu-link.current {
    background-color: #1754A5;
    color: #fff;
  }
  .nav-menu-link::before {
    display: none;
  }
  .nav-contact {
    width: 100%;
    height: 50px;
    padding: 5px;
    border-top-left-radius: 0;
  }
  .nav-contact-tel {
    flex: 1 1 auto;
    font-size: 10px;
  }
  .nav-contact-tel-link {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .nav-contact-link-btn {
    padding: calc(10px - .25em) 15px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}
/** ===========================================================================
 *    main
 * ========================================================================= */
.main {
  display: block;
  flex: 1 1 auto;
  padding-bottom: 120px;
}
.page-contents--lead {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.714;
  letter-spacing: .05em;
}
.breadcrumb + .page-contents--lead {
  margin-top: 65px;
}
.page-contents--btn-wrap {
  display: flex;
  justify-content: center;
}
.page-contents--btn-wrap:not(:first-child) {
  margin-top: 25px;
}
.page-contents--btn-wrap:not(:last-child) {
  margin-bottom: 75px;
}
.page-contents--btn {
  width: 300px;
}
.section:not(:last-child) {
  padding-bottom: 30px;
}
.section + .section {
  padding-top: 30px;
}
.breadcrumb + .section {
  padding-top: 50px;
}
.sub-section + .sub-section {
  margin-top: 50px;
}
.section-read {
  font-size: 16px;
  font-size: 1.6rem;
}
.section-read:not(:last-child) {
  margin-bottom: calc(30px - .25em);
}
.section-row {
  display: flex;
  flex-wrap: wrap;
  margin: -10px -20px;
}
.section-row--reverse {
  flex-direction: row-reverse;
}
.section-row-item {
  display: flex;
  flex-direction: column;
  padding: 10px 20px;
}
.section-row-item--col2 {
  width: 50%;
}
.section-row-item--col3 {
  width: 33.333%;
}
.section-image img {
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .section-row-item--col3 {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .section-row-item {
    width: 100%;
  }
}
/** ===========================================================================
 *    common contact
 * ========================================================================= */
.common-contact {
  padding-top: 60px;
  padding-bottom: 60px;
  background-color: #E7EEF6;
}
.common-contact-text {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.714;
  letter-spacing: .05em;
}
.common-contact-text:not(:last-child) {
  margin-bottom: calc(50px - .357em);
}
.common-contact-link-group {
  display: flex;
  flex-wrap: wrap;
  margin: -20px;
}
.common-contact-link-group-item {
  display: flex;
  width: 50%;
  padding: 20px;
}
.common-contact-link-btn {
  width: 100%;
}
@media screen and (max-width: 1239px) and (min-width: 768px) {
  .common-contact {
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 767px) {
  .common-contact-link-group-item {
    width: 100%;
  }
}
/** ===========================================================================
 *    footer
 * ========================================================================= */
.footer {
  border-top: 2px solid #1754A5;
}
.footer-contents {
  padding-top: 50px;
  padding-bottom: 50px;
}
.footer-contents-container {
  display: flex;
}
.footer-logo {
  margin-right: auto;
}
.footer-logo-link {
  display: inline-block;
}
.footer-nav {
  display: flex;
  flex-wrap: wrap;
  margin-top: -10px;
  margin-right: -30px;
  margin-bottom: -10px;
}
.footer-nav > * {
  padding: 10px 30px;
}
.footer-nav .menu, .footer-nav-group {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  margin: -10px;
}
.footer-nav .menu > .menu-item, .footer-nav-group-item {
  padding: 10px;
}
.footer-nav .menu > .menu-item > a, .footer-nav-link {
  color: #1754A5;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
}
.footer-nav .menu > .menu-item > a:hover, .footer-nav-link:hover {
  text-decoration: underline;
}
.footer-nav .menu > .menu-item > .sub-menu, .footer-nav .menu > .menu-item > .sub-menu > .menu-item:not(:first-child), .footer-nav-link + .footer-nav-categories, .footer-nav-link + .footer-nav-children--group {
  margin-top: 5px;
}
.footer-nav .menu > .menu-item > .sub-menu > .menu-item > a {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.5;
}
.footer-nav .menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item, .footer-nav-children--group-item {
  position: relative;
  padding-left: 1em;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.5;
}
.footer-nav .menu > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item::before, .footer-nav-children--group-item::before {
  content: "";
  display: block;
  width: .5em;
  height: .05em;
  background-color: #333;
  position: absolute;
  top: calc(.75em - .025em);
  left: 0;
}
@media screen and (max-width: 1023px) {
  .footer-nav .menu, .footer-nav-group {
    flex-wrap: wrap;
    margin-right: -10px;
    margin-left: -10px;
  }
  .footer-nav .menu > .menu-item, .footer-nav-group-item {
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media screen and (max-width: 767px) {
  .footer-contents-container {
    flex-direction: column;
    align-items: center;
  }
  .footer-logo {
    margin-left: auto;
    margin-bottom: 30px;
  }
  .footer-nav {
    margin-left: -30px;
  }
}
/** foot */
.footer-foot {
  padding-top: calc(15px - .25em);
  padding-bottom: calc(15px - .25em);
  background-color: #1754A5;
}
.footer-foot-container {
  display: flex;
}
.footer-foot-nav {
  font-size: 12px;
  font-size: 1.2rem;
}
.footer-foot-nav-group {
  display: flex;
  flex-wrap: wrap;
  margin-right: -3.15em;
  overflow: hidden;
}
.footer-foot-nav-group-item {
  padding-right: 3.15em;
  padding-left: 3.15em;
  position: relative;
  margin-left: -3.15em;
}
.footer-foot-nav-group-item::before {
  content: "";
  display: block;
  width: 1px;
  height: 1em;
  background-color: #fff;
  position: absolute;
  top: .25em;
  left: 1.575em;
  transform: translateX(-50%);
}
.footer-foot-nav-link {
  color: #fff;
}
.footer-foot-copyright {
  display: block;
  margin-left: auto;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
  .footer {
    margin-top: 48px;
  }
  .footer-foot-container {
    flex-direction: column;
    align-items: center;
  }
  .footer-foot-copyright {
    margin-top: 10px;
    margin-right: auto;
  }
}
/** ===========================================================================
 *    page
 * ========================================================================= */
.page-title {
  display: flex;
  align-items: center;
  min-height: 145px;
  padding-top: 50px;
  padding-bottom: 50px;
  background-color: #E7EEF6;
}
.page-title-text {
  color: #1754A5;
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.3;
  margin-top: -.15em;
  margin-bottom: -.15em;
}
.page-title-text--long {
  font-size: 40px;
  font-size: 4.0rem;
}
.page-title-lead {
  color: #1754A5;
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: -.375em;
}
.page-title-lead:not(:first-child) {
  margin-top: 15px;
}
@media screen and (max-width: 767px) {
  .page-title-text {
    font-size: 36px;
    font-size: 3.6rem;
  }
  .page-title-text--long {
    font-size: 26px;
    font-size: 2.6rem;
  }
}