@charset "UTF-8";
*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
      text-size-adjust: none;
}

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
  margin: 0;
}

ul[role=list], ol[role=list] {
  list-style: none;
}

body {
  min-height: 100vh;
  line-height: 1.5;
}

h1, h2, h3, h4, button, input, label {
  line-height: 1.1;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  color: currentColor;
}

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

textarea:not([rows]) {
  min-height: 10em;
}

:target {
  scroll-margin-block: 5ex;
}

html {
  font-size: 62.5%;
  font-family: "Noto Sans JP", "sans-serif";
  position: relative;
  background-color: #fff;
  color: #1E2D3B;
}

body {
  background: url("/common/img/bg_body.png") 50% 50%;
  font-size: 1.4rem;
  line-height: 180%;
}

ul, ol {
  padding-left: 0;
  margin: 0;
}

li {
  list-style: none;
}

a {
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

.img-fit {
  width: 100%;
}

.no-sp {
  display: none;
}

.align-c {
  text-align: center !important;
}
.align-l {
  text-align: left !important;
}
.align-r {
  text-align: right !important;
}

/* =====================

margin

====================== */
.mt-0 {
  margin-top: 0 !important;
}
.mt-20 {
  margin-top: 2.6666666667vw !important;
}
.mt-30 {
  margin-top: 8vw !important;
}
.mt-40 {
  margin-top: 5.3333333333vw !important;
}
.mt-60 {
  margin-top: 8vw !important;
}
.mt-80 {
  margin-top: 10.6666666667vw !important;
}
.mt-100 {
  margin-top: 13.3333333333vw !important;
}
.mt-120 {
  margin-top: 16vw !important;
}
.mt-140 {
  margin-top: 18.6666666667vw !important;
}
.mt-160 {
  margin-top: 21.3333333333vw !important;
}
.mt-180 {
  margin-top: 24vw !important;
}
.mt-200 {
  margin-top: 26.6666666667vw !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}
.mb-20 {
  margin-bottom: 2.6666666667vw !important;
}
.mb-40 {
  margin-bottom: 5.3333333333vw !important;
}
.mb-60 {
  margin-bottom: 8vw !important;
}
.mb-80 {
  margin-bottom: 10.6666666667vw !important;
}
.mb-100 {
  margin-bottom: 13.3333333333vw !important;
}
.mb-120 {
  margin-bottom: 16vw !important;
}
.mb-140 {
  margin-bottom: 18.6666666667vw !important;
}
.mb-160 {
  margin-bottom: 21.3333333333vw !important;
}
.mb-180 {
  margin-bottom: 24vw !important;
}
.mb-200 {
  margin-bottom: 26.6666666667vw !important;
}

/* =====================

heading

====================== */
.h1 {
  color: #fff;
  text-align: center;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 150%;
}

.h2 {
  font-family: "Montserrat", sans-serif;
  font-size: 6rem;
  font-weight: 100;
  color: #5F6975;
  line-height: 1;
}
.h2::first-letter {
  color: #DD294E;
}

/* =====================

button

====================== */
.button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding: 2.6666666667vw 4.2666666667vw;
  margin: 2.1333333333vw 0;
  border-radius: 1.0666666667vw;
  background-color: #DD294E;
  color: #fff !important;
  font-size: 1.2rem;
  line-height: 1.6;
  font-weight: 500;
}
.button.is-medium {
  padding: 3.2vw 6.4vw;
  font-size: 1.6rem;
}
.button.is-large {
  width: 100%;
  padding: 4.2666666667vw 10.6666666667vw;
  font-size: 1.8rem;
}
.button:hover {
  text-decoration: none;
  background-color: #C31C3E;
}
.button .icon {
  position: relative;
  overflow: hidden;
  margin-left: 2.1333333333vw;
  width: 4vw;
  height: 4vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.button .icon::after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  right: 0;
  background: url("/common/img/icon_angle_next.svg") 0 0/contain no-repeat;
  width: 100%;
  height: 100%;
}
.button.is-download .icon::after {
  background: url("/common/img/icon_dl.svg") 0 0/contain no-repeat;
}
.button.is-download.is-medium .icon, .button.is-download.is-large .icon {
  width: 5.8666666667vw;
  height: 5.8666666667vw;
  margin-left: 3.2vw;
}
.button.is-anchor .icon {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

/* =====================

icon

====================== */
.icon-mail::after {
  content: "";
  display: block;
  width: 6.4vw;
  height: 6.4vw;
  background: url("/common/img/icon_mail.svg") 0 0/cover no-repeat;
  margin: 0 -4.2666666667vw 0 4.2666666667vw;
}

/* =====================

topic path

====================== */
.topicPath {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  top: 3.7333333333vw;
  left: 5.3333333333vw;
  padding-bottom: 0.5em;
  overflow-x: scroll;
}
.topicPath li {
  font-size: 0.9rem;
  line-height: 160%;
  color: #9BACC4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.topicPath li:not(:first-child) {
  margin-left: 2.1333333333vw;
  position: relative;
}
.topicPath li:not(:first-child)::before {
  content: "";
  display: block;
  width: 1px;
  height: 2.1333333333vw;
  background-color: rgba(255, 255, 255, 0.3);
  margin-right: 2.1333333333vw;
}
.topicPath li a {
  color: #fff;
}

/* =====================

header

====================== */
.header {
  position: sticky;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 0.5px solid #DD294E;
  background: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(1.5px);
          backdrop-filter: blur(1.5px);
  z-index: 10;
}
.headerLogo {
  margin: 4vw 0 5.0666666667vw 4.5333333333vw;
  width: 31.4666666667vw;
  height: 8vw;
}
.headerNav {
  display: none;
}
.headerMail {
  position: absolute;
  top: 0;
  right: 17.0666666667vw;
  width: 17.0666666667vw;
  height: 17.0666666667vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.headerMail path {
  stroke: #DD294E;
}

.globalNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 0;
  height: auto;
}
.globalNav.is-open {
  width: 74.4vw;
}
.globalNav-btn {
  position: fixed;
  top: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 17.0666666667vw;
  height: 17.0666666667vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background-color: #DD294E;
  border: none;
  outline: none;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.globalNav-btn::before {
  content: "";
  display: block;
  width: 6.4vw;
  height: 6.4vw;
  background: url("/common/img/icon_menu.svg") 0 0/cover no-repeat;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.globalNav-btn span {
  display: none;
}
.is-open .globalNav-btn::before {
  background-image: url("/common/img/icon_menu_off.svg");
}
.globalNav-inner {
  position: absolute;
  top: 17.0666666667vw;
  width: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: #5F6975;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.is-open .globalNav-inner {
  width: 74.4vw;
  opacity: 1;
}
.globalNav-inner > ul {
  padding: 6.4vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 74.4vw;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 6.4vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.globalNav-inner > ul > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.5333333333vw 0px 0.5333333333vw 4.2666666667vw;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  border-left: 0.2666666667vw solid #DCE1E9;
}
.globalNav-inner > ul > li > a {
  color: #FFF;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 150%;
}
.globalNav-inner > ul ul {
  margin-top: 2.1333333333vw;
}
.globalNav-inner > ul ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 4.2666666667vw;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 2.1333333333vw;
}
.globalNav-inner > ul ul a {
  color: #FFF;
  font-size: 1.1rem;
  font-weight: var(--fonts-weight-rg-400, 400);
  line-height: 160%;
}
.globalNav-inner .mt-site-search-container {
  width: 100%;
  background-color: #fff;
}
.globalNav-inner .mt-site-search-container form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 4.2666666667vw;
}
.globalNav-inner .mt-site-search-container form input {
  border: none;
  font-size: 1rem;
  line-height: 130%;
  outline: none;
  background: transparent;
  width: calc(100% - 8.5333333333vw);
}
.globalNav-inner .mt-site-search-form__button {
  width: 4.2666666667vw;
  height: 0;
  border: none;
  padding-top: 4.2666666667vw;
  overflow: hidden;
  background: url("/common/img/icon_search.svg") 0 0/cover no-repeat;
  margin: 0;
}

/* =====================

footer

====================== */
.footer {
  background-color: #1E2D3B;
}
.footerNav {
  background-color: #404C59;
}
.footerNav-inner {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 23.4666666667vw;
}
.footerNav-list {
  display: none;
}
.footerLogo {
  width: 41.8666666667vw;
}
.pc_foot_contact{
  display:none;
}
.sp_foot_contact{
  display:block;
}

.footerBottom {
  text-align: center;
  padding: 5.3333333333vw;
}
.footerBottom ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4.2666666667vw;
}
.footerBottom a {
  font-size: 1rem;
  color: #fff;
  line-height: 1.2;
}

.copyright {
  padding: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 1rem;
  line-height: 1.1;
  font-family: "Montserrat", sans-serif;
}

.pageTop {
  position: fixed;
  bottom: 0px;
  right: 2.1333333333vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 4.2666666667vw 2.1333333333vw 5.3333333333vw 2.1333333333vw;
  border-radius: 0 0 2666.4vw 2666.4vw;
  background: #7789A4;
  -webkit-box-shadow: 2px 2px 8px 0px rgba(19, 31, 43, 0.1);
          box-shadow: 2px 2px 8px 0px rgba(19, 31, 43, 0.1);
  -webkit-writing-mode: vertical-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: vertical-lr;
  color: var(--colors-parts-text-white, #FFF);
  font-family: "Montserrat", sans-serif;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.1;
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
  z-index: 5;
}
.pageTop::after {
  content: "";
  display: block;
  width: 3.4666666667vw;
  height: 3.4666666667vw;
  background: url("/common/img/icon_arrow.svg") 0 0/cover no-repeat;
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
  margin-top: 2.1333333333vw;
}

/* =====================

layout

====================== */
.main {
  padding: 0 5.3333333333vw;
  margin-bottom: 53.3333333333vw;
}

.pageHeader {
  margin: 0 -5.3333333333vw;
  background: url("/common/img/bg_h1.png") 0 0/79px 72px repeat;
}
.pageWrapper {
  position: relative;
}
.pageHeader .pageWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 16vw 5.3333333333vw 12.8vw;
}

/* =====================

contents

====================== */
.contents {
  font-size: 1.4rem;
  line-height: 1.8;
}
.contents > *:first-child {
  margin-top: 8.5333333333vw;
}
.contents > *:last-child {
  margin-bottom: 12.8vw !important;
}
.contents h2 {
  margin: 12.8vw 0 8.5333333333vw;
  padding: 3.2vw 0px 4.2666666667vw;
  border-bottom: 1px solid #DD294E;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 150%;
  color: #2C3543;
}
.contents h3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 3.2vw 0;
  margin: 8.5333333333vw 0;
  color: #C31C3E;
  font-size: 1.9rem;
  font-weight: 500;
  line-height: 150%;
}
.contents h3::before {
  content: "";
  display: block;
  width: 3.7333333333vw;
  height: 3.7333333333vw;
  background-color: #334C72;
  border-radius: 100%;
  margin: 2.1333333333vw 3.2vw 0 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.contents h4 {
  margin: 8.5333333333vw 0;
  padding: 1.6vw 0;
  color: #C31C3E;
  font-size: 1.8rem;
  line-height: 150%;
  font-weight: 500;
}
.contents h5 {
  margin: 8.5333333333vw 0;
  padding: 1.6vw 0;
  color: #2C3543;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 150%;
}
.contents > p {
  margin: 5.3333333333vw 0;
}
.contents .fs-2rem {
  font-size: 2rem;
}
.contents a {
  color: #1E2D3B;
}

/* =====================

anchor

====================== */
ul.anchor {
  margin: 8.5333333333vw 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-bottom: 2.1333333333vw;
  border-bottom: 1px solid #DCE1E9;
}
ul.anchor li {
  padding: 2.1333333333vw 0;
  margin-right: 5.3333333333vw;
  font-size: 1.5rem;
  line-height: 150%;
  font-weight: 500;
}
ul.anchor li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #1E2D3B;
  overflow: hidden;
  position: relative;
  padding-left: 5.0666666667vw;
  white-space: nowrap;
}
ul.anchor li a::before {
  content: "";
  display: inline-block;
  width: 3.4666666667vw;
  height: 3.4666666667vw;
  background: url("/common/img/icon_angle_down.svg") 0 0/contain no-repeat;
  position: absolute;
  left: 0;
}
ul.anchor_s {
  margin: 3.2vw 0;
}
ul.anchor_s li {
  font-size: 1.2rem;
  line-height: 160%;
}
ul.anchor_s li a::before {
  height: 3.7333333333vw;
  background-image: url("/common/img/icon_arrow_red_down.svg");
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

/* =====================

lead

====================== */
.lead {
  margin: 12.8vw 0;
  text-align: center;
}
.lead p {
  color: #516482;
  font-size: 1.9rem;
  font-weight: 500;
  line-height: 175%;
}
.lead p strong {
  color: #DD294E;
  font-weight: 500;
}

/* =====================

annotation, asterisk

====================== */
.annotation {
  margin: 5.3333333333vw 0;
  counter-reset: annotation 0;
}
.annotation li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  color: #5F6975;
  font-size: 1.1rem;
  line-height: 150%;
  margin-top: 3.2vw;
}
.annotation li::before {
  counter-increment: annotation 1;
  content: "注" counter(annotation);
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 2.5em;
}

.asterisk li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.1rem;
}
.asterisk li span {
  width: 1.8em;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  white-space: nowrap;
}

/* =====================

h2(サブタイトル付)

====================== */
.h2Plus {
  margin: 12.8vw 0 8.5333333333vw;
  padding-bottom: 2.6666666667vw;
  position: relative;
  text-align: center;
}
.h2Plus::after {
  content: "";
  display: block;
  background-color: #DD294E;
  width: 34.1333333333vw;
  height: 0.5333333333vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.h2Plus h2 {
  margin: 0;
  padding: 1.6vw 0;
  border-bottom: none;
}
.h2Plus h2 + p {
  margin: 0;
  color: #5F6975;
  font-size: 1.7rem;
  font-weight: 500;
}

/* =====================

link

====================== */
.linkArrow {
  display: inline-block;
  color: #1E2D3B;
}
.linkArrow .icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  top: 0.2em;
  overflow: hidden;
  margin-right: 1.6vw;
  width: 4vw;
  height: 4vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.linkArrow .icon::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  background: url("/common/img/icon_angle_next_red.svg") 0 0/contain no-repeat;
  width: 100%;
  height: 100%;
}
a.link{
 text-decoration: underline;
}

/* =====================

list

====================== */
.contents ul:not([class]), .contents ol:not([class]) {
  margin: 8.5333333333vw 0;
}
.contents ul:not([class]) li, .contents ol:not([class]) li {
  position: relative;
  margin: 4.2666666667vw 0;
  padding-left: 3.2vw;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 150%;
}
.contents ul:not([class]) li:last-child, .contents ol:not([class]) li:last-child {
  margin-bottom: 0;
}
.contents ul:not([class]) li li, .contents ol:not([class]) li li {
  margin-left: 3.2vw;
  font-size: 1.1rem;
  font-weight: 400;
}
.contents ul:not([class]) li li li, .contents ol:not([class]) li li li {
  font-size: 0.9rem;
}
.contents ul:not([class]) ul, .contents ul:not([class]) ol, .contents ol:not([class]) ul, .contents ol:not([class]) ol {
  width: 100%;
  margin: 0;
}
.contents ul:not([class]) > li::before {
  content: "";
  display: block;
  width: 1.6vw;
  height: 1.6vw;
  border-radius: 100%;
  background-color: #DD294E;
  position: absolute;
  top: 0.5em;
  left: 0;
}
.contents ul:not([class]) > li ul > li::before {
  background-color: transparent;
  border: 1.5px solid #DD294E;
  top: 0.55em;
}
.contents ul:not([class]) > li ul > li > ul > li::before {
  background-color: #DD294E;
  border: none;
  width: 1.0666666667vw;
  height: 1.0666666667vw;
}
.contents ol:not([class]) {
  counter-reset: ol 0;
}
.contents ol:not([class]) > li {
  padding-left: 1.3em;
}
.contents ol:not([class]) > li::before {
  display: inline-block;
  counter-increment: ol 1;
  content: counter(ol) ".";
  color: #DD294E;
  position: absolute;
  top: 0;
  left: 0;
}
.contents ol:not([class]) ol > li::before {
  content: counter(ol, lower-alpha) ".";
}
.contents ol:not([class]) ol > li > ol > li::before {
  content: counter(ol, lower-roman) ".";
}

/* =====================

table

====================== */
.contents table {
  width: 100%;
  border-radius: 1.0666666667vw;
  margin: 8.5333333333vw 0;
  border-spacing: 0;
  border-right: 1px solid #DCE1E9;
  border-bottom: 1px solid #DCE1E9;
  overflow: hidden;
}
.contents table th, .contents table td {
  border-top: 1px solid #DCE1E9;
  border-left: 1px solid #DCE1E9;
  padding: 1.6vw 3.2vw;
}
.contents table th {
  background-color: #9BACC4;
  color: #fff;
  font-weight: 500;
}
.contents table td {
  background-color: #fff;
}
.contents table thead th {
  background-color: #7789A4;
}

/* =====================

tags, tag cloud

====================== */
.tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.6vw;
}
.tags > a, .tags > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5333333333vw 3.2vw;
  border-radius: 9999px;
  background-color: #516482;
  color: #fff;
  font-size: 0.9rem;
  line-height: 160%;
  font-weight: 500;
}
.tags > a:hover, .tags > span:hover {
  background-color: #334C72;
}

.tagCloud {
  background-color: #DCE1E9;
  margin-top: 6.4vw;
  padding: 4.2666666667vw 5.3333333333vw;
  border-radius: 2.1333333333vw;
}
.tagCloud_title {
  border-bottom: 1px solid #fff;
  margin-bottom: 3.2vw;
  padding-bottom: 3.2vw;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 180%;
}
.tagCloud_title img {
  display: inline-block;
  margin-right: 1.6vw;
  width: 6.4vw;
  height: 6.4vw;
}

/* =====================

column

====================== */
.mt-be-columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.column {
  margin: 0 0 8.5333333333vw;
}
.column-img {
  width: 100%;
}
.column-img img {
  width: 100%;
}
.column-text {
  margin-top: 4.2666666667vw;
}

/* =====================

card

====================== */
.card {
  width: 100%;
  background-color: #fff;
  border-radius: 2.1333333333vw;
  overflow: hidden;
  -webkit-box-shadow: 2px 2px 8px 0px rgba(19, 31, 43, 0.1);
          box-shadow: 2px 2px 8px 0px rgba(19, 31, 43, 0.1);
  margin: 4.2666666667vw 0;
  padding: 4.2666666667vw 5.3333333333vw 6.4vw;
  display: block;
}
.card > *:last-child {
  margin-bottom: 0 !important;
}
.card ul, .card ul li {
  margin: 1.6vw 0 !important;
}
.card-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: -4.2666666667vw -5.3333333333vw 6.4vw !important;
}
.card-title {
  margin: 6.4vw 0;
  padding-bottom: 3.2vw;
  border-bottom: 1px solid #DD294E;
  color: #2C3543 !important;
  font-size: 1.7rem !important;
  font-weight: 500;
  line-height: 150% !important;
}
.card-title + p {
  margin-bottom: 4.2666666667vw;
}
.card-subTitle {
  margin: 4.2666666667vw 0 !important;
  color: #516482 !important;
  font-size: 1.5rem !important;
  font-weight: 500;
  line-height: 160% !important;
  text-decoration: underline;
  text-decoration-thickness: 0.5em;
  text-decoration-color: rgba(243, 245, 249, 0.4);
  text-underline-offset: -0.2em;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}
.card .button {
  margin-top: 4.2666666667vw;
  width: 100%;
}
.cardBox {
  color: #1E2D3B;
}
.cardBox > h2.cardBox-title {
  font-size: 1.8rem;
  text-align: center;
  margin: 0 0 3.2vw;
  padding: 0 0 4.2666666667vw;
  border-bottom: none;
  position: relative;
}
.cardBox > h2.cardBox-title::after {
  content: "";
  display: block;
  background-color: #DD294E;
  width: 21.3333333333vw;
  height: 0.5333333333vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.cardBox .card-img {
  margin: 0 0 4.2666666667vw !important;
  border-radius: 1.0666666667vw;
  overflow: hidden;
}
.cardBox .card-img + h2 {
  margin: 0 0 5.3333333333vw;
  padding: 0 0 3.2vw;
  font-size: 1.7rem;
}
.cardBox .lead, .cardBox .asset-image {
  display: none !important;
}
.cardBox + .cardBox {
  margin-top: 5.3333333333vw;
}

/* =====================

figure

====================== */
.mt-figure figcaption {
  margin-top: 3.2vw;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.5;
  color: #5F6975;
}

/* =====================

box

====================== */
.box {
  background: #FFF;
  padding: 5.3333333333vw;
  margin: 8.5333333333vw auto;
}
.box > *:first-child {
  margin-top: 0;
}
.box h3 {
  margin: 0 0 3.2vw;
}
.box p {
  margin: 6.4vw 0;
}
.box .lead {
  margin: 3.2vw 0;
}
.box-inner {
  background-color: #f2f3f3;
  border-radius: 1.6vw;
  padding: 4.2666666667vw;
  margin-top: 6.4vw;
}
.box-inner > * {
  margin: 0 !important;
}
.box-inner li {
  margin-top: 0 !important;
}

.profile-label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding: 0 3.2vw;
  margin-bottom: 3.2vw;
  height: 4.8vw;
  background-color: #7789A4;
  border-radius: 9999px;
  font-size: 0.9rem;
  line-height: 160%;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  color: #fff;
}
.profile-img {
  width: 100%;
  text-align: center;
  border-radius: 1.0666666667vw;
  overflow: hidden;
  margin: 0;
}
.profile-info {
  margin: 0;
}
.profile-info h4 {
  margin: 5.3333333333vw 0 6.4vw;
}

.contact-name {
  font-size: 1.9rem;
  color: #516482;
  font-weight: 500;
  line-height: 175%;
  margin: 0 0 3.2vw !important;
}
.contact-section, .contact-address {
  margin: 1.6vw 0 !important;
  font-size: 1.5rem;
  font-weight: 500;
  color: #1E2D3B;
  line-height: 160%;
}
.contact-bottom .mt-be-column:nth-child(2) {
  text-align: right;
}
.contact-tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #DD294E;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 160%;
  font-family: "Montserrat", sans-serif;
  margin: 3.2vw 0 !important;
}
.contact-tel::before {
  content: "";
  display: block;
  margin-right: 3.2vw;
  width: 12.8vw;
  height: 12.8vw;
  background: url("/common/img/icon_tel.svg") 0 0/contain no-repeat;
}
.contact-time {
  margin: 3.2vw 0 0 !important;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 160%;
  color: #5F6975;
}

/* =====================

news

====================== */
.newsList {
  margin: 4.2666666667vw 0;
}
.newsItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-bottom: 1px solid #9BACC4;
  color: #1E2D3B;
  padding: 4.2666666667vw 2.1333333333vw;
}
.newsCategory {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 4.8vw;
  padding: 0 4.2666666667vw;
  margin-right: 3.7333333333vw;
  border-radius: 9999px;
  background-color: #334C72;
  color: #fff;
  font-size: 0.9rem;
  line-height: 160%;
  font-weight: 500;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
}
.newsCategory::before {
  content: "";
  display: inline-block;
  width: 1.0666666667vw;
  height: 1.0666666667vw;
  border-radius: 100%;
  margin-right: 1.0666666667vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.newsCategory.is-press::before {
  background-color: #F9C526;
}
.newsCategory.is-media::before {
  background-color: #DD294E;
}
.newsCategory.is-report::before {
  background-color: #02CBEF;
}
.newsDate {
  display: block;
  width: 100%;
  margin-top: 3.2vw;
  color: #5F6975;
  font-size: 1.4rem;
  line-height: 180%;
  font-family: "Montserrat", sans-serif;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.newsText {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}
.newsIcon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 5.8666666667vw;
  padding-left: 1.6vw;
  font-size: 0.9rem;
  color: #5F6975;
  font-family: "Montserrat", sans-serif;
  line-height: 160%;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.newsIcon::before {
  content: "";
  display: block;
  width: 3.2vw;
  height: 3.2vw;
  background: url("/common/img/icon_blank.svg") 0 0/contain no-repeat;
  margin-right: 0.5333333333vw;
}
.newsIcon.is-file::before {
  background-image: url("/common/img/icon_pdf.svg");
}

/* =====================

select year

====================== */
.selectYear {
  display: inline-block;
  background-color: #FFF;
  position: relative;
  border-radius: 9999px;
  overflow: hidden;
}
.selectYear select {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 180%;
  padding: 2.6666666667vw 7.4666666667vw 2.6666666667vw 12.8vw;
  border-radius: 9999px;
  border: 1px solid #9BACC4;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
.selectYear select:focus {
  border-color: #7789A4;
}
.selectYear::before {
  content: "";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #DD294E;
  border-radius: 100%;
  position: absolute;
  top: 50%;
  left: 3.7333333333vw;
  width: 4.5333333333vw;
  height: 4.5333333333vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.selectYear::after {
  content: "";
  display: block;
  width: 1.8666666667vw;
  height: 1.8666666667vw;
  background: url("/common/img/icon_angle_next.svg") 0 0/cover no-repeat;
  position: absolute;
  top: 50%;
  left: 5.0666666667vw;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}

/* =====================

about

====================== */
.aboutList {
  font-size: 1.5rem;
  line-height: 1.6;
}

.aboutList dt {
  padding-left: 2.1333333333vw;
}

.aboutList dd {
  padding: 0 0 3.2vw 2.1333333333vw;
  margin-bottom: 2.1333333333vw;
  border-bottom: 1px solid #B7BCC2;
}

.aboutList dd span {
  display: block;
  font-size: 1.1rem;
}

/* =====================

vision

====================== */
.visionMovie iframe {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 900/506;
}

/* =====================

seminar

====================== */
.seminarOutline_date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.seminarOutline_date dt, .seminarOutline_date dd {
  text-decoration: underline;
  text-decoration-thickness: 0.5em;
  text-decoration-color: #DCE1E9;
  text-underline-offset: -0.2em;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}
.seminarOutline_date dt {
  width: 4.5em;
  white-space: nowrap;
}
.seminarOutline_date + .seminarOutline_date {
  margin-top: 0.6em;
}
.seminarOutline_text {
  margin: 4.2666666667vw 0;
}

/* =====================

tag summary

====================== */
.tag_summary {
  margin: 6.4vw auto;
  padding-bottom: 6.4vw;
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}
.tag_summary h5 {
  margin: 0;
  padding: 0;
}
.tag_summary p {
  margin: 1em 0;
  font-size: 1.2rem;
}

/* =====================

dialog

====================== */
.dialogList .card {
  padding-bottom: 0;
}

/* =====================

tab

====================== */
.tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.3333333333vw;
  margin: 12.8vw 0;
}
.tabs li {
  width: 100%;
}
.tabs a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  width: 100%;
  height: 18.6666666667vw;
  background-color: #516482;
  opacity: 0.6;
  color: #fff;
  font-weight: 500;
  line-height: normal;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
}
.tabs a.is-current {
  background-color: #334C72;
  opacity: 1;
}
.tabs a.is-current::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.tabs-top a {
  border-radius: 2.1333333333vw 2.1333333333vw 0 0;
}
.tabs-top a.is-current {
  border-bottom: 0.5333333333vw solid #DD294E;
}
.tabs-top a.is-current::after {
  bottom: 0;
  border-width: 0 1.2vw 1.3333333333vw 1.2vw;
  border-color: transparent transparent #DD294E transparent;
}
.tabs-bottom a {
  border-radius: 0 0 2.1333333333vw 2.1333333333vw;
}
.tabs-bottom a.is-current {
  border-top: 0.5333333333vw solid #DD294E;
}
.tabs-bottom a.is-current::after {
  top: 0;
  border-width: 1.3333333333vw 1.2vw 0 1.2vw;
  border-color: #DD294E transparent transparent transparent;
}

/* =====================

solutions

====================== */
.solutions {
  max-width: 340px;
  min-height: 558px;
  margin: 20px auto 10px;
  padding: 11vw 4vw;
  background: #fff url("/service/img/bg_solutions_sp.avif") top center/cover no-repeat;
}
.solutions table {
  border-spacing: 2px;
  border-radius: 0;
  border: 0;
  margin: auto;
}
.solutions table td {
  font-size: 11px;
  width: 33.3333333333%;
  vertical-align: top;
  line-height: 1.2;
  border: 0;
  padding: 5px 0;
}
.solutions table a {
  padding: 5px 15px 5px 15px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  background-color: #e4e4e4;
  border-radius: 50vh;
}

/* =====================

translation

====================== */
.translationStaff, .translationDocs {
  border-bottom: 1px solid #7789A4;
  padding: 4.2666666667vw 0;
}
.translationStaff h4, .translationDocs h4 {
  margin: 0 0 3.7333333333vw;
}
.translationStaff dt, .translationDocs dt {
  font-weight: 500;
}
.translationStaff dt::after, .translationDocs dt::after {
  content: "：";
}
.translationStaff dd, .translationDocs dd {
  padding-left: 1em;
  margin-bottom: 0.5em;
}
.translationExample {
  font-weight: 500;
  font-style: italic;
}
.translationBox_cell {
  padding: 24px;
  background-color: #e7e7e7;
}
.translationBox_cell .bold {
  font-weight: 700;
}
.translationBox_cell p + p {
  margin-top: 0.5em;
}
.translationBox_cell:nth-child(2) {
  margin-top: 6.4vw;
  background-color: #efe7e9;
  color: #C31C3E;
}

/* =====================

Employee Relations

====================== */
.erOnestop {
  margin: 0 auto 48px;
}
.erOnestop .mt-be-column:nth-child(2) {
  position: relative;
}
.erOnestop .mt-be-column:nth-child(2)::before, .erOnestop .mt-be-column:nth-child(2)::after {
  content: "";
  display: block;
  width: 8.5333333333vw;
  height: 10.6666666667vw;
  background: url("/service/er/img/triangle.svg") 0 0/contain no-repeat;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  margin: 0.5333333333vw auto;
}
.erOnestop .card-title {
  border-color: #7789A4;
}
.erSection {
  position: relative;
}
.erSection::before {
  content: "";
  display: block;
  width: 100vw;
  height: calc(100% - 8.5333333333vw);
  background-color: rgba(155, 172, 196, 0.2);
  position: absolute;
  top: 8.5333333333vw;
  left: -5.3333333333vw;
  z-index: 0;
}
.erSection-head {
  position: relative;
  padding-top: 21.3333333333vw;
}
.erSection-head h2 {
  margin-top: 3.2vw;
}
.erSection-head p {
  margin-top: 4.2666666667vw;
}
.erSection-title {
  color: #DD294E;
  font-family: "Montserrat", sans-serif;
  font-size: 4.2rem;
  font-weight: 300;
  line-height: 130%;
  position: absolute;
  top: 0;
}
.erSection-subTitle {
  margin: 9.6vw auto 3.2vw !important;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  color: #2C3543 !important;
}
.erSection-subTitle::before, .erSection-subTitle::after {
  content: "";
  display: block;
  border-radius: 100%;
  background-color: #C31C3E !important;
  width: 1.6vw !important;
  height: 1.6vw !important;
  margin: 0 3.2vw !important;
}
.erSection .cardBox-title {
  font-size: 2.4rem;
  text-align: center;
  margin: 0 0 16px;
  padding: 0 0 16px;
  border-bottom: none;
  position: relative;
  font-weight: 500;
  line-height: 150%;
  color: #2C3543;
}
.erSection .cardBox-title::after {
  content: "";
  display: block;
  background-color: #DD294E;
  width: 80px;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.erSection .card-title {
  border-color: #7789A4;
}
.erSectionLast {
  margin: 0 auto !important;
  padding-bottom: 5.3333333333vw;
}
.erSectionLast .button {
  padding: 4.2666666667vw 6.4vw;
}
.erColumn {
  margin-bottom: 12.8vw;
}
.erConsult {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4.2666666667vw;
  margin: 6.4vw auto 0;
  text-align: center;
}
.erTravel {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* =====================

sitemap

====================== */
.sitemapList li {
  font-weight: 400 !important;
}
.sitemapList > li {
  border-bottom: 1px solid #B7BCC2;
  padding: 1em 0 1em 1em;
}
.sitemapList > li > a {
  font-size: 1.6rem;
}
.sitemapList_2nd {
  padding: 1em 0 1em 1em;
}
.sitemapList_3rd {
  margin: 0 !important;
  padding: 1em 0;
}
.sitemapList_3rd li {
  margin: 0.5em 1em !important;
  position: relative;
  padding-left: 1em;
}
.sitemapList_3rd li::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background-color: #DD294E;
  position: absolute;
  top: 0.7em;
  left: 0;
}

/* =====================

pagination

====================== */
.pagination {
  text-align: center;
}
.pagination ul:not([class]) {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.6vw;
  gap: 4.2666666667vw;
  border-radius: 9999px;
  background: rgba(64, 76, 89, 0.1);
}
.pagination ul:not([class]) li {
  margin: 0;
  padding-left: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.pagination ul:not([class]) li::before {
  display: none;
}
.pagination ul:not([class]) li a[rel*=prev] .homeArrow {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

/* =====================

home

====================== */
.homeSection {
  margin: 17.0666666667vw 0;
}
.homeTitle {
  color: #2C3543;
  font-size: 3.2rem;
  font-weight: 300;
  font-family: "Montserrat", sans-serif;
  line-height: 130%;
}
.homeMore {
  position: absolute;
  right: 0;
  top: 1.6vw;
}
.homeMore a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.0666666667vw 0;
  font-weight: 500;
  line-height: 160%;
}
.homeMore a span {
  display: block;
  position: relative;
  width: 3.4666666667vw;
  height: 3.4666666667vw;
  overflow: hidden;
  margin-left: 1.6vw;
}
.homeMore a span::before {
  content: "";
  display: block;
  width: 3.4666666667vw;
  height: 3.4666666667vw;
  background: url(/common/img/icon_angle_down.svg) 0 0/contain no-repeat;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: absolute;
  top: 0;
}
.homeSubTitle {
  margin-top: 1.0666666667vw;
  font-weight: 500;
  line-height: 130%;
  color: #516482;
}

/* =====================

service

====================== */
.homeService {
  background: url("/img/bg_enquiry.png") 0 0/90% repeat;
  color: #fff;
  border-radius: 2.1333333333vw;
  padding: 2.1333333333vw 4.266666666666667vw 5.3333333333vw;
  margin: 0 -2.1333333333vw 23.4666666667vw;
  text-align: center;
}
.homeService .homeTitle {
  color: #fff;
  margin: 0 0 4.8vw 0;
  text-align: left;
  padding: 0;
  border: none;
  font-size: 3.2rem;
  font-weight: 300;
  line-height: 130%;
}
.homeService-subTitle {
  color: #fff !important;
  font-size: 1.8rem !important;
  font-weight: 400 !important;
  line-height: 150%;
  margin: 0 !important;
  position: relative;
  display: block !important;
}
.homeService-subTitle::before, .homeService-subTitle::after {
  display: none !important;
}
.homeService-copy {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 175%;
  margin: 1.6vw 0 6.4vw;
}
.homeService-copy + p {
  font-weight: 500;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.homeServiceColumn {
  margin: 8.5333333333vw 0 -13.3333333333vw;
}
.homeServiceColumn-cell {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 100%;
  height: 53.3333333333vw;
  padding: 5.3333333333vw;
  position: relative;
  overflow: hidden;
  border-radius: 1.0666666667vw;
  -webkit-box-shadow: 2px 2px 16px 0px rgba(19, 31, 43, 0.3);
          box-shadow: 2px 2px 16px 0px rgba(19, 31, 43, 0.3);
  text-align: left;
}
.homeServiceColumn-cell + .homeServiceColumn-cell {
  margin-top: 5.3333333333vw;
}
.homeServiceColumn-cell h4, .homeServiceColumn-cell p {
  position: relative;
  z-index: 2;
  color: #516482;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 160%;
}
.homeServiceColumn-cell h4 {
  font-family: "Montserrat", sans-serif;
  font-size: 3.2rem;
  font-weight: 300;
  line-height: normal;
  margin-bottom: 1.0666666667vw;
  color: #2C3543;
}
.homeServiceColumn-img {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
}
.homeServiceColumn .homeArrow {
  position: absolute;
  bottom: 3.2vw;
  right: 3.2vw;
  width: 6.4vw;
  height: 6.4vw;
  z-index: 3;
}
.homeServiceColumn .homeArrow span, .homeServiceColumn .homeArrow span::before, .homeServiceColumn .homeArrow span::after {
  width: 2.4vw;
  height: 2.4vw;
}

/* =====================

home arrow

====================== */
.homeArrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 10.9333333333vw;
  height: 10.9333333333vw;
  border-radius: 100%;
  background-color: #fff;
}
.homeArrow span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 3.4666666667vw;
  height: 3.4666666667vw;
  overflow: hidden;
  position: relative;
}
.homeArrow span::before {
  content: "";
  display: block;
  width: 3.4666666667vw;
  height: 3.4666666667vw;
  background: url("/common/img/icon_angle_next_red.svg") 0 0/cover no-repeat;
  position: absolute;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

/* =====================

seminar, column

====================== */
.homeSeminar, .homeColumn {
  overflow: hidden;
  margin-left: -5.3333333333vw;
  margin-right: -5.3333333333vw;
}
.homeSeminar .homeTitle, .homeColumn .homeTitle {
  display: inline-block;
}
.homeSeminar .pageWrapper, .homeColumn .pageWrapper {
  margin: 0 5.3333333333vw;
}

/* =====================

swiper

====================== */
.homeSection .swiper {
  overflow: visible;
  margin-top: 5.3333333333vw;
}
.homeSection .swiper-slide {
  display: block;
  width: 71.4666666667vw;
  -webkit-box-shadow: 2px 2px 8px 0px rgba(19, 31, 43, 0.1);
          box-shadow: 2px 2px 8px 0px rgba(19, 31, 43, 0.1);
  border-radius: 1.0666666667vw;
  overflow: hidden;
  margin-right: 4.2666666667vw;
}
.homeSection .swiper-controller {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3.2vw;
  margin-top: 4.2666666667vw;
}
.homeSection .swiper-controller .swiper-button-prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.homeSection .swiper-button-next, .homeSection .swiper-button-prev {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.homeSection .swiper-button-next::after, .homeSection .swiper-button-prev::after {
  display: none;
}

.swiper-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 3.2vw;
  position: static;
}

.swiper-pagination-bullet {
  display: block;
  border-radius: 9999px;
  opacity: 0.3;
  background: #8A9097;
  width: 100%;
  height: 0.5333333333vw;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin: 0 !important;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background-color: #DD294E;
}

.swiper_pause {
  display: block;
  border: none;
  outline: none;
  width: 6.4vw;
  height: 6.4vw;
  background: url("/img/icon_stop.svg") 0 0/cover no-repeat;
  cursor: pointer;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.swiper_pause.paused {
  background-image: url("/img/icon_play.svg");
}

/* =====================

mv

====================== */
.mv {
  background: url("/img/bg_mv_sp.jpg") 0 0/cover repeat;
  margin: -17.3333333333vw -5.3333333333vw 0;
}
.mv .swiper {
  height: 100svh;
}
.mv-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
}
.mv-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 160%;
  padding: 3.2vw 0;
  margin-top: 21.3333333333vw;
  font-family: "Montserrat", sans-serif;
  color: #2C3543;
}
.mv-button .homeArrow {
  margin-left: 3.2vw;
  width: 6.4vw;
  height: 6.4vw;
  background: #DD294E;
}
.mv-button .homeArrow span, .mv-button .homeArrow span::before, .mv-button .homeArrow span::after {
  width: 2.4vw;
  height: 2.4vw;
}
.mv-button .homeArrow span::before, .mv-button .homeArrow span::after {
  background-image: url("/common/img/icon_angle_next.svg");
}
.mv-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  bottom: 11px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 20;
}
.mv .swiper_pause {
  margin-left: 15px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.mv .swiper-slide-active {
  z-index: 10;
}
.mv .swiper-pagination-bullet {
  background-color: #8A9097;
  opacity: 0.3;
  border-radius: 9999px;
  width: 21.3333333333vw;
  height: 1.0666666667vw;
}
.mv .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #DD294E;
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}

/* =====================

map

====================== */

.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%;
  margin-bottom: 30px;
}
 
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* =====================

service index

====================== */
.serviceIntro h2 {
  padding: 0;
  border-bottom: 0;
  text-align: center;
  font-size: 2.4rem;
  color: #516482;
  span {
    display: block;
    margin-bottom: 6.4vw;
    color: #C31C3E;
    font-size: 1.8rem;
    line-height: 150%;
  }
}

.serviceImage {
  position: relative;
  width: calc(352 / 375 * 100vw);
  margin: 0 calc(-9 / 375 * 100vw);
  overflow: hidden;
  .homeService & {
    width: 100%;
    margin: 0 auto;
  }
}


.serviceImage-list a {
  position: absolute;
  height: 0;
  padding-top: 3.6rem;
  overflow: hidden;
}
.serviceImage-list_1 {
  top: calc(10 / 375 * 100vw);
  left: calc(9 / 375 * 100vw);
  width: calc(104 / 375 * 100vw);
  padding-top: calc(69 / 375 * 100vw) !important;
  .homeService & {
    top: calc(24 / 375 * 100vw);
  }
}
.serviceImage-list_2 {
  top: calc(10 / 375 * 100vw);
  right: calc(9 / 375 * 100vw);
  width: calc(93 / 375 * 100vw);
  padding-top: 1.8rem !important;
  .homeService & {
    top: calc(24 / 375 * 100vw);
  }
}
.serviceImage-list_3 {
  top: calc(548 / 375 * 100vw);
  right: calc(9 / 375 * 100vw);
  width: calc(128 / 375 * 100vw);
  .homeService & {
    top: calc(526 / 375 * 100vw);
  }
}
.serviceImage-list_4 {
  top: calc(548 / 375 * 100vw);
  left: calc(9 / 375 * 100vw);
  width: calc(130 / 375 * 100vw);
  .homeService & {
    top: calc(530 / 375 * 100vw);
  }
}
.serviceIndex {
  h2 {
    display: flex;
    align-items: center;
    gap: calc(24 / 375 * 100vw);
    img {
      width: calc(82 / 375 * 100vw);
      flex-shrink: 0;
    }
  }
  ul {
    margin: 0 !important;
  }
}
.serviceIndex-inner {
  display: flex;
  flex-direction: column;
  gap: calc(12 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw);
}
.serviceIndex-cell {
  width: 100%;
  padding: calc(16 / 375 * 100vw) calc(20 / 375 * 100vw);
  border-radius: calc(8 / 375 * 100vw);
  background: #F8F9FA;
  h3 {
    display: block;
    text-align: center;
    margin: 0 0 calc(16 / 375 * 100vw);
    padding: 0;
    font-size: 1.6rem;
    color: #5F6975;
    &::before {
      content: none;
    }
    &::after {
      content: "";
      display: block;
      width: calc(40 / 375 * 100vw);
      height: 1px;
      background-color: #DD294E;
      margin: calc(6 / 375 * 100vw) auto 0;
    }
  }
  > ul {
    .linkArrow {
      display: flex;
      align-items: flex-start;
      justify-content: flex-start;
      .icon {
        margin: 0 0 0 calc(6 / 375 * 100vw);
      }
      .newsIcon {
        margin: 0 auto 0 0;
      }
    }
  }
  > ul > li {
    margin: 0 0 calc(14 / 375 * 100vw) !important;
    &:last-child {
      margin-bottom: 0 !important;
    }
    ul {
      padding: calc(4 / 375 * 100vw) 0px;
      font-weight: 500;
      > li {
        margin: calc(12 / 375 * 100vw) 0 0 calc(4 / 375 * 100vw) !important;
        font-size: 1.4rem !important;
        font-weight: 500;
      }
    }
  }
}
/* =====================

innerbranding

====================== */
.main.ib {
  margin-bottom: 0;
}
.ibSection {
  position: relative;
  margin: 0 -5.3333333333vw;
  padding: 6vw 0 ;
  .contents {
    padding: 0 5.3333333333vw;
  }
}
.ibSection_white {
  background-color: #fff;
}
h2.ibTitle {
  margin: 0 0 3.5rem !important;
  padding: 2rem 0 0 !important;
  border: none;
  text-align: center;
  font-size: 2.2rem;
  font-weight: 500;
}
p.iblead {
  margin-bottom: 5rem !important;
  font-size: 1.6rem;
  line-height: 1.5;
}

.ibSection div.ib-support {
  margin: 3rem auto 0 !important;
}
.ibLss {
  .column {
    h4 {
      text-align: center;
      font-size: 2.2rem;
      color: #2C3543;
      font-weight: 500;
      margin: 0 !important;
    }
    p.column-text {
      line-height: 2;
    }
  }
}
.ibFAQ {
  dl {
    padding-left: 1rem;
  }
  dt {
    display: flex;
    gap: 1rem;
    font-size: 1.8rem;
    padding: .5rem 0;
    margin-bottom: 1.2rem;
    &::before {
      content: "Q";
      color: #C31C3E;
    }
  }
  dd {
    display: flex;
    gap: 1rem;
    font-size: 1.6rem;
    line-height: 2;
    margin-bottom: 5rem;
    &::before {
      content: "A";
    }
  }
}
.ibSection .serviceIndex, .ibSection .serviceIndex .box {
  margin: 0 !important;
}
