@charset "UTF-8";
/*
  HTML5 Reset :: style.css
  ----------------------------------------------------------
  We have learned much from/been inspired by/taken code where offered from:

  Eric Meyer          :: http://meyerweb.com
  HTML5 Doctor        :: http://html5doctor.com
  and the HTML5 Boilerplate  :: http://html5boilerplate.com

-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
}

article, aside, figure, footer, header, nav, section, details, summary {
  display: block;
}

/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {
  max-width: 100%;
}

/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
  In fact, it *will* cause problems with Google Maps' controls at small size.
  If this is the case for you, try uncommenting the following:

#map img {
    max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll;
}

/* we use a lot of ULs that aren't bulleted.
  you'll have to restore the bullets within content,
  which is fine because they're probably customized anyway */
ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

del {
  text-decoration: line-through;
}

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

/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  font-weight: bold;
  vertical-align: bottom;
}

td {
  font-weight: normal;
  vertical-align: top;
}

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

input, select {
  vertical-align: middle;
}

pre {
  white-space: pre;
  /* CSS2 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word;
  /* IE */
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
}

.ie7 input[type=checkbox] {
  vertical-align: baseline;
}

.ie6 input {
  vertical-align: text-bottom;
}

select, input, textarea {
  font: 99% sans-serif;
}

table {
  font-size: inherit;
  font: 100%;
}

small {
  font-size: 85%;
}

strong {
  font-weight: bold;
}

td, td img {
  vertical-align: top;
}

/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* standardize any monospaced elements */
pre, code, kbd, samp {
  font-family: monospace, sans-serif;
}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer;
}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
  margin: 0;
}

/* make buttons play nice in IE */
button,
input[type=button] {
  width: auto;
  overflow: visible;
}

/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic;
}

/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:before, .clearfix:after {
  content: " ";
  display: block;
  height: 0;
  overflow: hidden;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

html {
  font-size: 62.5%;
  height: auto;
  overflow: visible;
}

body {
  font-family: "hiragino sans", "Noto Sans JP", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS Pゴシック", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Meiryo", "メイリオ", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  color: #232323;
  height: auto;
  overflow: visible;
}
@media screen and (max-width: 768px) {
  body.is__fix {
    overflow: hidden;
    height: 100%;
    position: static;
  }
}

img {
  vertical-align: bottom;
}

.slick-slider {
  opacity: 0;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}
.slick-slider.slick-initialized {
  opacity: 1;
}

.container {
  padding-left: 30px;
  padding-right: 30px;
  max-width: 1060px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (max-width: 768px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.pcnon {
  display: none;
}
@media screen and (max-width: 768px) {
  .pcnon {
    display: block;
  }
}

.spnon {
  display: block;
}
@media screen and (max-width: 768px) {
  .spnon {
    display: none;
  }
}

.sectionTtl {
  font-size: 3.8rem;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .sectionTtl {
    font-size: 2.9rem;
  }
}
@media screen and (max-width: 321px) {
  .sectionTtl {
    font-size: 2.8rem;
  }
}
.sectionTtl:after {
  content: "";
  width: 12px;
  height: 15.7px;
  background: url(../images/icon_ttl.svg) no-repeat center center/cover;
  display: block;
  margin-top: 10px;
}

.row2Ttl {
  text-align: center;
}
.row2Ttl__jp {
  font-size: 3rem;
  font-weight: bold;
  display: block;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .row2Ttl__jp {
    font-size: 2.3rem;
    margin-bottom: 5px;
  }
}
.row2Ttl__en {
  display: block;
  color: #000000;
}
@media screen and (max-width: 768px) {
  .row2Ttl__en {
    font-size: 1.2rem;
  }
}

.roundBt {
  background: #006cb6;
  border: 1px solid #006cb6;
  width: 242px;
  height: 72px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 72px;
  color: #fff;
  text-decoration: none;
  position: relative;
  -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
          box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
}
@media screen and (min-width: 768px) {
  .roundBt:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: transparent;
    color: #006cb6;
  }
  .roundBt:hover:after {
    background: url(../images/arrow_right_blue.svg) no-repeat center center/cover;
  }
}
.roundBt:after {
  content: "";
  display: block;
  width: 6px;
  height: 8.7px;
  background: url(../images/arrow_right_white.svg) no-repeat center center/cover;
  position: absolute;
  right: 20px;
  top: calc(50% - 4.3px);
}
@media screen and (max-width: 768px) {
  .roundBt {
    width: 207px;
    height: 45px;
    font-size: 1.6rem;
    margin-left: auto;
    margin-right: auto;
  }
  .roundBt:after {
    width: 4.5px;
    height: 8.5px;
    right: 15px;
    top: calc(50% - 4.25px);
  }
}

html {
  font-size: 62.5%;
}

body.is_active {
  overflow: hidden;
}

.header {
  position: fixed;
  z-index: 7;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #fff;
  }
}
.header.isScrolled {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #fff;
}
.header.isScrolled .header__inner {
  padding: 20px 30px;
}
@media screen and (max-width: 768px) {
  .header.isScrolled .header__inner {
    padding: 10px 15px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.header.isScrolled .header__logo {
  width: 305px;
  -webkit-flex-basis: 305px;
      -ms-flex-preferred-size: 305px;
          flex-basis: 305px;
}
@media screen and (max-width: 768px) {
  .header.isScrolled .header__logo {
    max-width: 217px;
  }
}
.header.jsActive .gnav {
  display: block;
  background-color: #003559;
  position: absolute;
  left: 0;
  width: 100%;
  height: calc(100vh - 56px);
  overflow: scroll;
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 90px;
}
@media screen and (max-width: 1240px) {
  .header.jsActive .gnav {
    top: 76px;
  }
}
@media screen and (max-width: 768px) {
  .header.jsActive .gnav {
    top: 56px;
  }
}
.header.jsActive .gnav__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.header.jsActive .hum__bar:nth-of-type(1) {
  top: calc(50% - 0.5px);
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}
.header.jsActive .hum__bar:nth-of-type(2) {
  display: none;
}
.header.jsActive .hum__bar:nth-of-type(3) {
  top: calc(50% - 0.5px);
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}
.header_type_low {
  padding: 30px 20px;
  background-color: #fff;
  position: relative;
}
.header_type_low .header__logo {
  max-width: 490px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .header_type_low .header__logo {
    width: 100%;
  }
}
.header_type_low.isScrolled {
  padding: 20px;
}
.header_type_low.isScrolled .header__logo {
  max-width: 490px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .header_type_low.isScrolled .header__logo {
    width: 100%;
  }
}
.header__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 30px;
}
@media screen and (max-width: 768px) {
  .header__inner {
    padding: 10px 15px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.header__logo {
  width: 450px;
  -webkit-flex-basis: 450px;
      -ms-flex-preferred-size: 450px;
          flex-basis: 450px;
  font-size: 0;
}
@media screen and (max-width: 768px) {
  .header__logo {
    max-width: 217px;
  }
}
.header__logoLink {
  display: block;
}
.gnav {
  margin-left: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1240px) {
  .gnav {
    display: none;
  }
}
.gnav__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1240px) {
  .gnav__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-top: 30px;
  }
}
.gnav__item {
  padding-left: 2em;
  position: relative;
}
@media screen and (max-width: 1240px) {
  .gnav__item {
    width: 100%;
    padding-left: 0;
  }
  .gnav__item:nth-of-type(5) {
    display: none;
  }
}
.gnav__item_type_sp {
  display: none;
}
@media screen and (max-width: 1240px) {
  .gnav__item_type_sp {
    display: block;
  }
}
.gnav__link {
  color: inherit;
  text-decoration: none;
  font-weight: bold;
}
@media screen and (max-width: 1240px) {
  .gnav__link {
    font-size: 1.7rem;
    color: #fff;
    line-height: 3;
    display: block;
    width: 100%;
  }
}
.gnav__link:hover {
  text-decoration: underline;
}
.gnav__link_type_contact {
  width: 100%;
  height: 50px;
  background-color: #F98152;
  border-radius: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
  color: #fff;
  padding: 5px 10px;
  margin: 1em 0;
}
.gnav__link_type_contact:after {
  content: "";
  content: "";
  width: 5.5px;
  height: 5.5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  display: block;
  position: absolute;
  right: 20px;
  top: calc(50% - 2.75px);
}
.gnav__link_type_contactBt {
  width: 100%;
  margin: 20px 0 30px;
  display: flex;
  color: #013557;
  line-height: 1.4;
  text-decoration: none;
  position: relative;
}
.gnav__link_type_contactBt:after {
  content: "";
  width: 5.5px;
  height: 5.5px;
  border-top: 1px solid #013557;
  border-right: 1px solid #013557;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  display: block;
  position: absolute;
  right: 12px;
  top: calc(50% - 2.75px);
}
.gnav__link_type_contactBt:hover {
  opacity: .7;
  text-decoration: none;
}
.gnavContactBt__bgFig {
  width: 100px;
  -webkit-flex-basis: 100px;
      -ms-flex-preferred-size: 100px;
          flex-basis: 100px;
  background-color: #E2ECF7;
  padding: 7px 5px 4px 7px;
  border-radius: 3px 0 0 3px;
  display: flex;
  align-items: center;
}
.gnavContactBt__btTxt {
  background-color: #fff;
  width: calc(100% - 100px);
  -webkit-flex-basis: calc(100% - 100px);
      -ms-flex-preferred-size: calc(100% - 100px);
          flex-basis: calc(100% - 100px);
  padding: 10px;
  color: #013557;
  font-size: 1.4;
  border-radius: 0 3px 3px 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.gnavContactBt__btTerm {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 5px;
}
.gnavContactBt__btDetail {
  font-size: 1.2rem;
}

.gnav__link_type_sp {
  font-size: 1.4rem;
  line-height: 2.5;
}
.gnav__link_type_toggle {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 1240px) {
  .gnav__link_type_toggle {
    display: none;
  }
}
.gnav__link_type_toggle:hover {
  text-decoration: none;
}
.gnav__link_type_toggle:after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background: url(../images/icon_nav.png) no-repeat center center/cover;
  margin-left: 5px;
}
@media screen and (max-width: 768px) {
  .gnav__link_type_toggle:after {
    display: none;
  }
}
.gnav__sub {
  display: none;
  width: 350px;
  position: absolute;
  left: 2em;
  top: 13px;
  background-color: #fff;
  padding: 20px 20px 3px 20px;
  border-radius: 6px;
}
@media screen and (max-width: 1240px) {
  .gnav__sub {
    display: block !important;
    position: static;
    background-color: transparent;
    border-radius: 0;
    padding: 0;
    width: 100%;
  }
}
.gnav__subItem {
  border-bottom: 1px solid #EEEEEE;
}
@media screen and (max-width: 1240px) {
  .gnav__subItem {
    border: none;
  }
}
.gnav__subItem:last-of-type {
  border-bottom: none;
}
.gnav__subLink {
  font-size: 1.4rem;
  color: inherit;
  text-decoration: none;
  line-height: 1;
  padding: 12px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1240px) {
  .gnav__subLink {
    color: #fff;
    font-size: 1.7rem;
    align-items: flex-start;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-left: 0.5em;
    padding: 0;
    line-height: 1.6;
    margin-bottom: 1em;
    width: 100%;
  }
  .gnav__subItem:last-of-type .gnav__subLink {
    margin-bottom: .6em;
  }
  .gnav__subLink:before {
    content: "-";
    margin-right: 0.5em;
    display: block;
  }
}
.gnav__subLink:hover {
  text-decoration: underline;
}
.gnav__subLink:after {
  content: "";
  width: 6px;
  height: 6px;
  border-top: 1px solid #9E9F9F;
  border-right: 1px solid #9E9F9F;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media screen and (max-width: 1240px) {
  .gnav__subLink:after {
    display: none;
  }
}
@media screen and (min-width: 1151px) {
  .gnav__subLink_type_sp {
    display: none;
  }
}
@media screen and (max-width: 1240px) {
  .gnav__subLink_type_sp {
    font-weight: bold;
  }
  .gnav__subLink_type_sp:before {
    display: none;
  }
}

.hum {
  display: none;
}
@media screen and (max-width: 1240px) {
  .hum {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 35px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: auto;
  }
}
.hum__inner {
  width: 100%;
  height: 18px;
  position: relative;
}
.hum__text {
  font-size: 1.1rem;
  line-height: 1;
  margin-top: 7px;
}
.hum__bar {
  display: block;
  width: 100%;
  background-color: #323333;
  height: 1px;
  position: absolute;
  left: 0;
}
.hum__bar:nth-of-type(1) {
  top: 0;
}
.hum__bar:nth-of-type(1) {
  top: calc(50% - 0.5px);
}
.hum__bar:nth-of-type(3) {
  top: 100%;
}

main {
  display: block;
}
@media screen and (max-width: 768px) {
  main {
    padding-top: 56px;
  }
}

.footer {
  background-color: #003559;
  padding-top: 100px;
}
@media screen and (max-width: 768px) {
  .footer {
    padding-top: 60px;
    padding-bottom: 77px;
  }
}
@media screen and (max-width: 321px) {
  .footer {
    padding-bottom: 130px;
  }
}
.footer_type_low {
  padding: 25px 0;
}
@media screen and (max-width: 768px) {
  .footer_type_low {
    padding: 15px 0;
  }
}
.footer_type_low .footer__copy {
  display: block;
  text-align: center;
  padding: 0 10px;
  margin-top: 0;
}
.footer__menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-left: auto;
}
@media screen and (max-width: 920px) {
  .footer__menu {
    display: block;
  }
}
.footer__logo {
  width: 276px;
  -webkit-flex-basis: 276px;
      -ms-flex-preferred-size: 276px;
          flex-basis: 276px;
}
@media screen and (max-width: 768px) {
  .footer__logo {
    width: 240px;
    -webkit-flex-basis: 240px;
        -ms-flex-preferred-size: 240px;
            flex-basis: 240px;
    margin: 0 0 20px;
  }
}
.footer__logoLink {
  display: block;
}

.footer__info {
  width: 460px;
  -webkit-flex-basis: 460px;
      -ms-flex-preferred-size: 460px;
          flex-basis: 460px;
  padding-right: 20px;
}
.footer__name {
  margin-top: 25px;
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff;
}
.footer__addr {
  margin-top: 13px;
  font-size: 1.4rem;
  color: #fff;
  line-height: 1.42;
}
.footer__addrName {
  font-weight: 700;
  display: block;
  margin-bottom: 4px;
}
@media screen and (max-width: 920px) {
  .footer__info {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 768px) {
  .footer__info {
    width: 100%;
    margin: 0 0 20px;
  }
}

.footer__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: flex-start;
  max-width: 570px;
}
@media screen and (max-width: 768px) {
  .footer__nav {
    display: block;
  }
}
.footer__other {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 105px;
}
@media screen and (max-width: 768px) {
  .footer__other {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-top: 30px;
  }
}
.footer__otherList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .footer__otherList {
    width: 100%;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.footer__otherItem:last-of-type .footer__otherLink:after {
  display: none;
}
.footer__otherLink {
  color: #fff;
  text-decoration: none;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .footer__otherLink {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 321px) {
  .footer__otherLink {
    font-size: 1rem;
  }
}
.footer__otherLink:after {
  content: "｜";
  padding: 0 1em;
}
@media screen and (max-width: 321px) {
  .footer__otherLink:after {
    padding: 0 0.5em;
  }
}
.footer__copy {
  font-size: 1.4rem;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .footer__copy {
    display: block;
    font-size: 1.2rem;
    text-align: center;
    margin-top: 15px;
    width: 100%;
  }
}

.footer__enterprise .footer__copy {
  margin-top: 85px;
  width: 100%;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-color: #fff;
  color: #232323;
}
@media screen and (max-width: 768px) {
  .footer__enterprise .footer__copy {
    height: 50px;
    margin-top: 40px;
  }
}

.fNav {
  width: 275px;
}
.fNav2 {
  padding-left: 55px;
  border-left: 1px solid #4D5675;
  margin-left: 40px;
  width: 240px;
}
@media screen and (max-width: 768px) {
  .fNav2 {
    border-left: none;
    margin-left: 0;
    padding-left: 0;
  }
}
.fNav__link {
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 2.13;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .fNav__link {
    font-size: 1.4rem;
  }
}
.fNav__link-mt {
  margin-top: 2.13em;
}
.fNav__link-hp {
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .fDlNav {
    margin-top: 1em;
  }
}
.fDlNav__dt {
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .fDlNav__dt {
    font-size: 1.4rem;
  }
}
.fDlNav__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.fDlNav__item {
  width: 100%;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}
.fDlNav__dDlink {
  color: #fff;
  text-decoration: none;
}
.fDlNav__link {
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
  line-height: 1.6;
  margin-bottom: .56em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .fDlNav__link {
    font-size: 1.2rem;
  }
}
.fDlNav__link:before {
  content: "-";
  padding: 0 0.5em;
}

.main {
  overflow: hidden;
}

.top {
  padding-top: 87px;
}
@media screen and (max-width: 768px) {
  .top {
    padding-top: 56px;
  }
}

.topMv {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 540px;
  background: url(../images/bg_mv_wh.jpg) no-repeat center center/cover;
  position: relative;
  z-index: 3;
}
.topMv::after {
  content: "";
  height: 447px;
  width: 50%;
  display: block;
  background: url(../images/img_mv_2.png) center center no-repeat;
  background-size: auto 100%;
  background-position: left center;
  z-index: 1;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.topMv__text {
  width: 100%;
}
.topMv__textInner {
  width: 430px;
  max-width: 50%;
  position: relative;
  z-index: 2;
}
.topMv__textInner::before {
  content: "";
  width: 85px;
  height: 83px;
  display: block;
  background: url(../../../image/common/icon-38th.svg) top center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: -43px;
}
.topMv__copy {
  font-size: 1.8rem;
  font-weight: 700;
  color: #003559;
  line-height: 1;
  margin-bottom: 20px;
  letter-spacing: 0.1em;
}
.topMv__ttl {
  font-size: 5rem;
  font-weight: 800;
  color: #003559;
  line-height: 1;
  margin-bottom: 30px;
  letter-spacing: 0.05em;
}
.topMv__priceWrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 15px;
}
.topMv__priceWrap .person {
  font-size: 1.6rem;
  font-weight: 700;
  margin-right: 3px;
}
.topMv__priceWrap .person .pp {
  font-size: 1.4rem;
  font-weight: 700;
}
.topMv__priceWrap .price {
  font-size: 1.8rem;
  font-weight: 700;
}
.topMv__priceWrap .price strong {
  font-size: 4.6rem;
  color: #fc571e;
}
.topMv__priceImg {
  width: 100%;
  height: auto;
}
.topMv__note {
  font-size: 1.4rem;
  margin-bottom: 35px;
}
.topMv__bt {
  width: 100%;
  display: flex;
  color: #fff;
  text-decoration: none;
  position: relative;
}
.topMv__bt:after {
  content: "";
  width: 5.5px;
  height: 5.5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  display: block;
  position: absolute;
  right: 18px;
  top: calc(50% - 2.75px);
}
.topMv__bt:hover {
  opacity: 0.8;
}
.topMvBt__bgFig {
  width: 140px;
  -webkit-flex-basis: 140px;
      -ms-flex-preferred-size: 140px;
          flex-basis: 140px;
  background-color: #eaeaea;
  padding: 8px 5px 4px 8px;
  border-radius: 5px 0 0 5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.topMvBt__btTxt {
  background-color: #fc571e;
  width: calc(100% - 140px);
  -webkit-flex-basis: calc(100% - 140px);
      -ms-flex-preferred-size: calc(100% - 140px);
          flex-basis: calc(100% - 140px);
  padding: 10px 20px;
  border-radius: 0 5px 5px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.topMvBt__btTerm {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 5px;
}
.topMvBt__btDetail {
  font-size: 1.4rem;
}
@media screen and (max-width: 1060px) {
  .topMv {
    min-height: 490px;
  }
  .topMv::after {
    margin-right: -30px;
  }
}
@media screen and (max-width: 834px) {
  .topMv {
    padding-top: 50px;
    padding-bottom: 0;
    height: auto;
    display: block;
  }
  .topMv::after {
    content: "";
    height: auto;
    width: 100%;
    aspect-ratio: 75 / 59;
    background-image: url(../images/img_mv_sp_2.png);
    position: relative;
    top: inherit;
    transform: none;
  }
  .topMv__text {
    width: 100%;
    position: static;
    padding-left: 35px;
    padding-right: 35px;
    z-index: 2;
  }
  .topMv__textInner {
    width: 100%;
    max-width: 100%;
    position: static;
  }
  .topMv__textInner::before {
    content: "";
    width: 72px;
    height: 67px;
    top: inherit;
    right: 20px;
    bottom: 30px;
  }
  .topMv__copy {
    font-size: 1.5rem;
    margin-bottom: 15px;
    text-align: center;
  }
  .topMv__ttl {
    font-size: 4rem;
    margin-bottom: 25px;
    text-align: center;
  }
  .topMv__priceWrap {
    margin-bottom: 10px;
    justify-content: center;
  }
  .topMv__priceWrap .person {
    font-size: 1.3rem;
    margin-right: 2px;
  }
  .topMv__priceWrap .person .pp {
    font-size: 1.2rem;
  }
  .topMv__priceWrap .price {
    font-size: 1.5rem;
  }
  .topMv__priceWrap .price strong {
    font-size: 3.8rem;
  }
  .topMv__note {
    font-size: 1rem;
    margin-bottom: 20px;
  }
  .topMv__bt {
    display: none;
    border: 3px solid #fff;
    border-radius: 6px;
    box-shadow: 3px 3px 6px 0px rgba(0,0,0,0.3);
  }
  .topMv__bt:after {
    right: 12px;
  }
  .topMvBt__bgFig {
    width: 100px;
    -webkit-flex-basis: 100px;
        -ms-flex-preferred-size: 100px;
            flex-basis: 100px;
    padding: 7px 4px 3px 7px;
  }
  .topMvBt__btTxt {
    width: calc(100% - 100px);
    -webkit-flex-basis: calc(100% - 100px);
        -ms-flex-preferred-size: calc(100% - 100px);
            flex-basis: calc(100% - 100px);
    padding: 10px;
  }
  .topMvBt__btTerm {
    font-size: 1.4rem;
  }
  .topMvBt__btDetail {
    font-size: 1.2rem;
  }
}

.topMv__bg {
  width: 100%;
  height: 100vh;
}
.topMv__bgImg {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.fixedBt {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 380px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #fc571e;
  color: #fff;
  text-decoration: none;
  z-index: 6;
  box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
}
@media screen and (max-width: 768px) {
  .fixedBt {
    width: 100%;
  }
}
.fixedBt__bgFig {
  width: 168px;
  -webkit-flex-basis: 168px;
      -ms-flex-preferred-size: 168px;
          flex-basis: 168px;
  background-color: #eaeaea;
  padding: 8px 5px 4px 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .fixedBt__bgFig {
    width: 110px;
    -webkit-flex-basis: 110px;
        -ms-flex-preferred-size: 110px;
            flex-basis: 110px;
    padding: 7px 4px 3px 7px;
  }
}
.fixedBt__btTxt {
  width: calc(100% - 168px);
  -webkit-flex-basis: calc(100% - 168px);
      -ms-flex-preferred-size: calc(100% - 168px);
          flex-basis: calc(100% - 168px);
  padding: 10px 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 768px) {
  .fixedBt__btTxt {
    width: calc(100% - 110px);
    -webkit-flex-basis: calc(100% - 110px);
        -ms-flex-preferred-size: calc(100% - 110px);
            flex-basis: calc(100% - 110px);
    padding: 5px 10px;
  }
}
.fixedBt__btTerm {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 5px;
}
@media screen and (max-width: 768px) {
  .fixedBt__btTerm {
    font-size: 1.4rem;
  }
}
.fixedBt__btDetail {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .fixedBt__btDetail {
    font-size: 1.2rem;
  }
}

.topAbout {
  padding-top: 130px;
  position: relative;
  margin-bottom: 130px;
}
@media screen and (max-width: 768px) {
  .topAbout {
    padding-top: 60px;
    margin-bottom: 60px;
  }
}
.topAboutClient {
  padding-top: 80px;
}
@media screen and (max-width: 768px) {
  .topAboutClient {
    padding-top: 40px;
  }
}
.topAbout:after {
  content: "";
  background: rgb(232, 240, 249);
  background: linear-gradient(-102deg, rgb(255, 255, 255) 0%, rgb(232, 240, 249) 100%);
  display: block;
  width: 100vw;
  height: calc(100% - 100px);
  position: absolute;
  right: calc(50% - 50vw);
  top: 20px;
  transform: skewY(-12deg);
}
@media screen and (max-width: 768px) {
  .topAbout:after {
    height: calc(100% - 200px);
    top: 100px;
  }
}
.topAbout__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1060px) {
  .topAbout__inner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
.topAbout__clients {
  width: 100%;
  margin-bottom: 80px;
  padding-bottom: 75px;
  border-bottom: 1px solid #c8c8c8;
}
.topAbout__clientsIc {
  width: 290px;
  height: 40px;
  margin: 0 auto 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  background: #fb592c;
  border-radius: 999px;
  letter-spacing: .08em;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "hiragino sans", "Noto Sans JP", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS Pゴシック", "Meiryo", "メイリオ", sans-serif;
}
.topAbout__clientsTtl {
  font-size: 5rem;
  line-height: 1.36;
  font-weight: 700;
  color: #fb592c;
  text-align: center;
  letter-spacing: .1em;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "hiragino sans", "Noto Sans JP", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS Pゴシック", "Meiryo", "メイリオ", sans-serif;
}
.topAbout__clientsTxt {
  margin-top: 35px;
  font-size: 2rem;
  line-height: 1.8;
  font-weight: 500;
  text-align: center;
  letter-spacing: .2em;
}
@media screen and (max-width: 990px) {
  .topAbout__clientsTtl {
    font-size: 4rem;
  }
  .topAbout__clientsTxt {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .topAbout__clients {
    margin-bottom: 35px;
    padding-bottom: 0;
    border-bottom: none;
  }
  .topAbout__clientsIc {
    width: 220px;
    height: 36px;
    padding-top: 1px;
    margin: 0 auto 15px;
    font-size: 1.6rem;
    letter-spacing: .05em;
  }
  .topAbout__clientsTtl {
    font-size: 2.8rem;
    line-height: 1.428;
    letter-spacing: 0;
  }
  .topAbout__clientsTxt {
    margin-top: 20px;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.66;
    text-align: left;
    letter-spacing: .05em;
  }
}

.topAbout__clientsItms {
  width: 100vw;
  max-width: 1184px;
  margin-left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}
.topAbout__clientsItm {
  width: 33.33%;
  padding: 0 17px;
}
.topAbout__clientsItmFig {
  width: 100%;
  font-size: 0;
}
.topAbout__clientsItmImg {
  width: 100%;
  height: auto;
}
.topAbout__clientsItmTxt {
  width: 100%;
  max-width: 25em;
  min-height: 3em;
  margin: 10px auto 0;
  font-size: 1.2rem;
  line-height: 18px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.topAbout__clientsItmTxt b {
  font-weight: 700;
  font-size: 1.4rem;
}
.topAbout__clientsItm:nth-child(2) .topAbout__clientsItmTxt {
  max-width: 100%;
}
.topAbout__clientsItmTxtList {
  padding: 0 11%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}
.topAbout__clientsItmTxtList .topAbout__clientsItmTxt {
  width: 50%;
  display: block;
}
@media screen and (max-width: 768px) {
  .topAbout__clientsItms {
    width: 100%;
    display: block;
  }
  .topAbout__clientsItm {
    width: 100%;
    max-width: 360px;
    padding: 0;
    margin: 25px auto 0;
  }
  .topAbout__clientsItm:first-child {
    margin-top: 0;
  }
  .topAbout__clientsItmTxt {
    min-height: inherit;
    margin: 10px auto 0;
    font-size: 1.2rem;
    line-height: 18px;
  }
  .topAbout__clientsItmTxt b {
    font-size: 1.4rem;
  }
  .topAbout__clientsItmTxtList {
    padding: 0 11%;
  }
}

.topAbout__texts {
  width: 505px;
  -webkit-flex-basis: 505px;
      -ms-flex-preferred-size: 505px;
          flex-basis: 505px;
  min-width: 505px;
}
@media screen and (max-width: 1060px) {
  .topAbout__texts {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    min-width: 100%;
  }
}
.topAbout__ttl {
  font-size: 4rem;
  font-weight: 800;
  color: #003559;
  line-height: 1.4;
  margin-bottom: 50px;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 768px) {
  .topAbout__ttl {
    font-size: 3.1rem;
    margin-bottom: 25px;
  }
}
.topAbout__desc {
  line-height: 2;
}
.topAbout__descSt {
  font-weight: 700;
  color: #F98152;
}
.topAbout__fig {
  width: 64vw;
  -webkit-flex-basis: 64vw;
      -ms-flex-preferred-size: 64vw;
          flex-basis: 64vw;
  position: relative;
  left: 75px;
  margin-right: calc(-50vw + 575px);
}
@media screen and (max-width: 1060px) {
  .topAbout__fig {
    position: static;
    margin-left: 0;
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-right: 0;
    margin-top: 15px;
  }
}
.topAbout__figImg {
  width: 100%;
  height: auto;
}
.topAbout__pointList {
  width: calc(100% - 565px);
}
.topAbout__point {
  padding: 30px 0;
  border-top: 1px solid #c8c8c8;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.topAbout__point:last-of-type {
  border-bottom: 1px solid #c8c8c8;
}
.topAbout__pointNum {
  width: 80px;
  height: 80px;
  margin-right: 30px;
  padding-top: 18px;
  border-radius: 50%;
  align-items: center;
  background-color: #0987ce;
  color: #fff;
  font-family : Futura;
  font-weight : 700;
  font-size : 2.8rem;
  line-height: 1;
  text-align: center;
  font-style: normal;
}
.topAbout__pointNum::before {
  content: "POINT";
  display: block;
  width: 100%;
  font-size : 1.4rem;
  margin-bottom: 5px;
}
.topAbout__pointTxt {
  font-size: 2rem;
}
.topAbout__pointTxt b {
  font-weight: 700;
}
@media screen and (max-width: 1060px) {
  .topAbout__pointList {
    width: 100%;
    margin-top: 25px;
  }
}
@media screen and (max-width: 768px) {
  .topAbout__point {
    padding: 20px 0;
  }
  .topAbout__pointNum {
    width: 60px;
    height: 60px;
    margin-right: 20px;
    padding-top: 14px;
    font-size : 2.2rem;
  }
  .topAbout__pointNum::before {
    font-size : 1rem;
    margin-bottom: 3px;
  }
  .topAbout__pointTxt {
    font-size: 1.6rem;
  }
}

.serviceDetail {
  position: relative;
  margin-bottom: 220px;
}
@media screen and (max-width: 768px) {
  .serviceDetail {
    margin-bottom: 60px;
  }
}
.serviceDetail__inner {
  position: relative;
  z-index: 2;
}
.serviceDetail:after {
  content: "";
  display: block;
  width: calc(100% - 21px);
  height: calc(100% - 220px);
  border: 24px solid #EEF4FA;
  position: absolute;
  left: -100px;
  top: 30%;
}
@media screen and (max-width: 768px) {
  .serviceDetail:after {
    display: none;
  }
}
.serviceDetail__ttl {
  margin-bottom: 15px;
}
.serviceDetail__subTtl {
  font-size: 3.2rem;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 20px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .serviceDetail__subTtl {
    font-size: 2.3rem;
    text-align: center;
  }
}
@media screen and (max-width: 321px) {
  .serviceDetail__subTtl {
    font-size: 1.8rem;
  }
}
.serviceDetail__intro {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 35px;
}
@media screen and (max-width: 768px) {
  .serviceDetail__intro {
    margin-bottom: 30px;
  }
}

.serviceList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-left: -20px;
  margin-right: -20px;
}
@media screen and (max-width: 768px) {
  .serviceList {
    margin: 0;
  }
}
.serviceList__item {
  width: 33.333%;
  -webkit-flex-basis: 33.333%;
      -ms-flex-preferred-size: 33.333%;
          flex-basis: 33.333%;
  padding: 0 20px;
}
@media screen and (max-width: 1060px) {
  .serviceList__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 20px;
  }
  .serviceList__item:last-of-type {
    margin-bottom: 20px;
  }
}
.serviceList__img {
  width: 100%;
}
.serviceList__ttl {
  font-size: 3.7rem;
  font-weight: 700;
  display: inline-block;
  background-color: #fff;
  line-height: 1;
  padding: 20px 20px 15px 0;
  margin-top: 0;
}
@media screen and (max-width: 1060px) {
  .serviceList__ttl {
    margin-top: -35px;
  }
}
@media screen and (max-width: 768px) {
  .serviceList__ttl {
    font-size: 3.6rem;
    padding: 20px 25px 15px 0;
  }
}
.serviceList__desc {
  line-height: 2;
}

.serviceLatest {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 40px;
}
@media screen and (max-width: 1060px) {
  .serviceLatest {
    margin-top: 0;
    border-top: 1px solid #D6D6D6;
    padding-top: 30px;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
.serviceLatest__fig {
  width: 540px;
  -webkit-flex-basis: 540px;
      -ms-flex-preferred-size: 540px;
          flex-basis: 540px;
}
@media screen and (max-width: 1060px) {
  .serviceLatest__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 20px;
  }
}
.serviceLatest__img {
  width: 100%;
}
.serviceLatest__text {
  width: calc(100% - 540px);
  -webkit-flex-basis: calc(100% - 540px);
      -ms-flex-preferred-size: calc(100% - 540px);
          flex-basis: calc(100% - 540px);
  padding-left: 50px;
}
@media screen and (max-width: 1060px) {
  .serviceLatest__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}
.serviceLatest__ttl {
  font-size: 3.7rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .serviceLatest__ttl {
    font-size: 2.7rem;
    margin-bottom: 15px;
  }
}
.serviceLatest__desc {
  line-height: 2;
}

.serviceExercise {
  position: relative;
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .serviceExercise {
    margin-bottom: 60px;
  }
}
.serviceExercise:after {
  content: "";
  display: block;
  width: calc(100% - 21px);
  height: calc(100% - 420px);
  border: 24px solid #EEF4FA;
  position: absolute;
  right: -100px;
  top: 21%;
}
@media screen and (max-width: 768px) {
  .serviceExercise:after {
    display: none;
  }
}
.serviceExercise__inner {
  position: relative;
  z-index: 2;
}
.serviceExercise__ttl {
  margin-bottom: 23px;
}
.serviceExercise__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 75px;
}
@media screen and (max-width: 768px) {
  .serviceExercise__item {
    margin-bottom: 30px;
    padding-bottom: 60px;
    position: relative;
  }
  .serviceExercise__item:not(:first-of-type) {
    border-top: 1px solid #D6D6D6;
    padding-top: 30px;
  }
}
.serviceExercise__item:last-of-type {
  margin-bottom: 0;
}
.serviceExercise__item:nth-of-type(odd) .serviceExercise__itemText {
  padding-right: 40px;
}
@media screen and (max-width: 1060px) {
  .serviceExercise__item:nth-of-type(odd) .serviceExercise__itemText {
    padding-right: 0;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media screen and (max-width: 1060px) {
  .serviceExercise__item:nth-of-type(odd) .serviceExercise__fig {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}
.serviceExercise__item:nth-of-type(even) .serviceExercise__itemText {
  padding-left: 40px;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (max-width: 1060px) {
  .serviceExercise__item:nth-of-type(even) .serviceExercise__itemText {
    padding-left: 0;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
.serviceExercise__item:nth-of-type(even) .serviceExercise__fig {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (max-width: 1060px) {
  .serviceExercise__item:nth-of-type(even) .serviceExercise__fig {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}
.serviceExercise__itemText {
  width: calc(100% - 500px);
  -webkit-flex-basis: calc(100% - 500px);
      -ms-flex-preferred-size: calc(100% - 500px);
          flex-basis: calc(100% - 500px);
}
@media screen and (max-width: 1060px) {
  .serviceExercise__itemText {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}
.serviceExercise__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
}
.serviceExercise__headNum {
  display: block;
  padding-left: 5px;
  padding-right: 25px;
}
@media screen and (max-width: 768px) {
  .serviceExercise__headNum {
    padding-right: 15px;
  }
}
.serviceExercise__headNumImg {
  height: 55px;
}
@media screen and (max-width: 768px) {
  .serviceExercise__headNumImg {
    height: 40px;
  }
}
.serviceExercise__headTtl {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.42;
  border-left: 1px solid #232323;
  padding-left: 20px;
}
@media screen and (max-width: 768px) {
  .serviceExercise__headTtl {
    font-size: 2rem;
    padding-left: 15px;
  }
}
.serviceExercise__detail {
  line-height: 2;
}
.serviceExercise__fig {
  width: 500px;
  -webkit-flex-basis: 500px;
      -ms-flex-preferred-size: 500px;
          flex-basis: 500px;
}
@media screen and (max-width: 1060px) {
  .serviceExercise__fig {
    margin-top: 20px;
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}
.serviceExercise__meat {
  width: 100%;
  height: 64px;
  margin-top: 25px;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: .08em;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  border-radius: 32px;
  background-color: #0987ce;
}
.serviceExercise__meatIcon {
  width: 94px;
  height: 30px;
  display: block;
  font-family : Futura;
  font-weight : 700;
  font-size : 1.4rem;
  line-height: 30px;
  text-align: center;
  font-style: normal;
  color: #fff;
  border-radius: 4px;
  background-color: #0987ce;
  margin-right: 20px;
}
@media screen and (max-width: 768px) {
  .serviceExercise__meat {
    height: 40px;
    margin-top: 0;
    font-size: 1.6rem;
    border-radius: 20px;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .serviceExercise__meatIcon {
    width: 76px;
    height: 26px;
    font-size : 1.2rem;
    line-height: 26px;
    border-radius: 3px;
    margin-right: 10px;
  }
}

.topService_itm--bg {
  background-color: #EEF4FA;
  width: 100vw;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.serviceContents {
  padding-top: 120px;
  padding-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .serviceContents {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.serviceContents__ttl {
  margin-bottom: 20px;
}
.serviceContents__txt {
  margin-bottom: 40px;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.9;
}
@media screen and (max-width: 768px) {
  .serviceContents__txt {
    margin-bottom: 25px;
    font-size: 1.6rem;
    text-align: left;
    line-height: 1.6;
  }
}
.serviceContents__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -15px;
}
@media screen and (max-width: 1060px) {
  .serviceContents__list {
    margin: -10px;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.serviceContents__item {
  width: 33.33%;
  -webkit-flex-basis: 33.33%;
      -ms-flex-preferred-size: 33.33%;
          flex-basis: 33.33%;
  padding: 15px;
}
@media screen and (max-width: 1060px) {
  .serviceContents__item {
    width: 50%;
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    padding: 10px;
  }
}
.serviceContents__itemInner {
  background-color: #fff;
  padding: 25px 20px 15px 20px;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .serviceContents__itemInner {
    padding: 20px 15px;
  }
}
.serviceContents__fig {
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 25px;
}
@media screen and (max-width: 768px) {
  .serviceContents__fig {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 20px;
  }
}
.serviceContents__headline {
  font-size: 1.8rem;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .serviceContents__headline {
    font-size: 1.6rem;
    text-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 2em;
  }
}
.serviceContents__desc {
  font-size: 1.5rem;
  line-height: 1.86;
}
@media screen and (max-width: 768px) {
  .serviceContents__desc {
    font-size: 1.2rem;
    line-height: 1.6;
  }
}

.serviceSample {
  margin-bottom: 130px;
}
.serviceSample__ttl {
  margin-bottom: 20px;
}
.serviceSample__list {
  border-top: 1px solid #ccc;
}
.serviceSample__item {
  padding: 40px 0;
  border-bottom: 1px solid #ccc;
}
.serviceSample__itemInner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-content: stretch;
}
.serviceSample__fig {
  width: 240px;
  background-color: #f6f7f7;
  padding: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.serviceSample__img {
  width: 100%;
  height: auto;
}
.serviceSample__texts {
  width: calc(100% - 280px);
}
.serviceSample__headline {
  font-size: 2.8rem;
  line-height: 1.2;
  font-weight: 700;
}
.serviceSample__desc {
  margin-top: 30px;
  font-size: 1.5rem;
  line-height: 1.82;
}
.serviceSample__meta {
  margin-top: 30px;
  font-size: 1.4rem;
  line-height: 1.82;
}
.serviceSample__bt {
  margin-top: 30px;
  width: 290px;
  height: 56px;
  background-color: #fff;
  border-radius: 28px;
  font-size: 1.8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px;
  color: #232323;
  text-decoration: none;
  position: relative;
  border: 1px solid #232323;
  font-weight: 600;
}
.serviceSample__item .modal {
  background-color: rgba(35, 24, 21, 0.9);
}
.serviceSample__item .modal-content--sample {
  max-width: 800px;
  height: 80vh;
  height: 80dvh;
  max-height: 768px;
  border-radius: 10px;
  padding: 0 60px;
  position: relative;
}
.serviceSample__item .modal-sample-modalclose {
  width: 60px;
  height: 60px;
  display: block;
  background: url(../images/icon_modal_close.svg) center center no-repeat;
  background-size: contain;
  position: absolute;
  top: -30px;
  right: -30px;
}
.serviceSample__item .modal-sample-inn {
  height: 100%;
  padding: 50px 0;
  overflow-y: scroll;
}
.serviceSample__item .modal-sample-headline {
  font-size: 2.7rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 30px;
}
.serviceSample__item .modal-sample-ttl {
  width: 100%;
  height: 38px;
  padding: 0 10px;
  background-color: #ecf2f8;
  font-size: 2rem;
  line-height: 38px;
  font-weight: 700;
  color: #003559;
}
.serviceSample__item .modal-sample-contents {
  margin: 15px 0 40px;
  font-size: 1.5rem;
  line-height: 1.7;
}
.serviceSample__item .modal-sample-body {
  margin: 30px 0 40px;
}
.serviceSample__item .modal-sample-body h2 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.46;
  color: #1D3A5B;
  font-weight: bold;
  position: relative;
  border-top: 1px solid #1D3A5B;
  border-bottom: 1px solid #1D3A5B;
  padding: 10px 0;
  margin-bottom: 19px;
}
.serviceSample__item .modal-sample-body h3 {
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
  color: #1D3A5B;
  position: relative;
  padding-left: 15px;
  margin: 1em 0;
}
.serviceSample__item .modal-sample-body h3:before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 3px;
  height: 16px;
  background-color: #88ABCB;
  z-index: 1;
}
.serviceSample__item .modal-sample-body h4 {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 7px;
  line-height: 1.5;
}
.serviceSample__item .modal-sample-body img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.serviceSample__item .modal-sample-body ul,
.serviceSample__item .modal-sample-body ol {
  list-style: none;
  margin-bottom: 19px;
}
.serviceSample__item .modal-sample-body ul li,
.serviceSample__item .modal-sample-body ol li {
  text-indent: -1em;
  padding-left: 1em;
  list-style-type: none;
  position: relative;
}
.serviceSample__item .modal-sample-body li > ul,
.serviceSample__item .modal-sample-body li > ol {
  margin-bottom: 0;
}
.serviceSample__item .modal-sample-body p {
  font-size: 15px;
  font-size: 1.5rem;
  margin-top: 1em;
}
.serviceSample__item .modal-sample-in_brief {
  margin: 30px 0 0;
}
.serviceSample__item .modal-sample-in_brief p {
  font-size: 15px;
  line-height: 1.6;
  margin-top: 1em;
}
.serviceSample__item .modal-sample-in_brief .inbrief-list_l {
  text-indent: -1em;
  padding-left: 1em;
  margin: 1em 0;
  display: block;
}
.serviceSample__item .modal-sample-in_brief .inbrief-list_m {
  text-indent: -1em;
  padding-left: 2em;
  margin: 1em 0;
  display: block;
}
.serviceSample__item .modal-sample-in_brief .inbrief-list_s {
  text-indent: -1em;
  padding-left: 3em;
  margin: 1em 0;
  display: block;
}
.serviceSample__item .modal-sample-in_brief .inbrief-list_l-nobullet {
  text-indent: 0;
  padding-left: 1em;
  margin: 1em 0;
  display: block;
}
.serviceSample__item .modal-sample-in_brief .inbrief-list_m-nobullet {
  text-indent: 0;
  padding-left: 2em;
  margin: 1em 0;
  display: block;
}
.serviceSample__item .modal-sample-in_brief .inbrief-list_s-nobullet {
  text-indent: 0;
  padding-left: 3em;
  margin: 1em 0;
  display: block;
}
.serviceSample__item .modal-sample-in_brief h3,
.serviceSample__item .modal-sample-in_brief .bullet {
  font-weight: 400;
  font-size: 17px;
  line-height: 1.6;
  margin-top: 1em;
  text-indent: -1em;
  padding-left: 1em;
  display: block;
}
.serviceSample__item .modal-sample-in_brief p,
.serviceSample__item .modal-sample-in_brief .nobullet {
  font-size: 15px;
  line-height: 1.6;
  margin-top: 1em;
  text-indent: 0;
  padding-left: 0;
  display: block;
}
.serviceSample__item .modal-sample-in_brief ul {
  list-style: none;
  padding: 0;
  padding-left: 1em;
  margin: 1em 0 0;
}
.serviceSample__item .modal-sample-in_brief ul li {
  text-indent: -1em;
  padding-left: 1em;
  list-style-type: none;
  font-size: 15px;
  line-height: 1.6;
  position: relative;
}
.serviceSample__item .modal-sample-in_brief ol {
  list-style: none;
  padding: 0;
  padding-left: 1em;
  margin: 1em 0 0;
}
.serviceSample__item .modal-sample-in_brief ol li {
  text-indent: -1em;
  padding-left: 1em;
  font-size: 15px;
  line-height: 1.6;
  position: relative;
}
@media screen and (max-width: 768px) {
  .serviceSample {
    margin-bottom: 60px;
  }
  .serviceSample__item {
    padding: 30px 0;
  }
  .serviceSample__fig {
    width: 180px;
    padding: 20px;
  }
  .serviceSample__texts {
    width: calc(100% - 210px);
  }
  .serviceSample__headline {
    font-size: 2.2rem;
  }
  .serviceSample__desc {
    margin-top: 20px;
    font-size: 1.5rem;
  }
  .serviceSample__meta {
    margin-top: 20px;
    font-size: 1.4rem;
  }
  .serviceSample__bt {
    width: 100%;
    font-size: 1.6rem;
    height: 44px;
    margin-top: 20px;
    border-radius: 22px;
  }
  .serviceSample__item .modal-content--sample {
    padding: 0 20px;
  }
  .serviceSample__item .modal-sample-modalclose {
    width: 40px;
    height: 40px;
    top: -20px;
    right: -20px;
  }
  .serviceSample__item .modal-sample-inn {
    padding: 30px 0;
  }
  .serviceSample__item .modal-sample-headline {
    font-size: 2.2rem;
    margin-bottom: 25px;
  }
  .serviceSample__item .modal-sample-contents {
    margin: 15px 0 30px;
  }
  .serviceSample__item .modal-sample-body {
    margin: 25px 0 30px;
  }
  .serviceSample__item .modal-sample-in_brief {
    margin: 25px 0 0;
  }
}
@media screen and (max-width: 640px) {
  .serviceSample__fig {
    width: 100%;
    padding: 30px;
    margin-bottom: 25px;
  }
  .serviceSample__img {
    width: 180px;
  }
  .serviceSample__texts {
    width: 100%;
  }
}

.serviceFunction {
  padding-top: 120px;
  padding-bottom: 130px;
}
@media screen and (max-width: 768px) {
  .serviceFunction {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.serviceFunction__ttl {
  margin-bottom: 20px;
}
.serviceFunction__listTtl {
  margin-bottom: 40px;
  padding: 0 20px;
  border-radius: 4px;
  background-color: #0987ce;
  color: #fff;
  font-size: 2rem;
  line-height: 50px;
  font-weight: 700;
}
.serviceFunction__listTtl.serviceFunction__listTtl-admin {
  background-color: #003559;
}
.serviceFunction__list + .serviceFunction__listTtl {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .serviceFunction__listTtl {
    margin-bottom: 20px;
    padding: 0 10px;
    border-radius: 3px;
    font-size: 1.6rem;
    line-height: 40px;
  }
  .serviceFunction__list + .serviceFunction__listTtl {
    margin-top: 30px;
  }
}
.serviceFunction__listTxt {
  margin-bottom: 35px;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .serviceFunction__listTxt {
    margin-bottom: 20px;
    font-size: 1.4rem;
  }
}
.serviceFunction__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -15px;
}
@media screen and (max-width: 768px) {
  .serviceFunction__list {
    margin: 0;
  }
}
.serviceFunction__item {
  width: 50%;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
  padding: 15px;
}
@media screen and (max-width: 1060px) {
  .serviceFunction__item {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding: 0;
    margin-bottom: 10px;
  }
  .serviceFunction__item:last-of-type {
    margin-bottom: 0;
  }
}
.serviceFunction__itemInner {
  border: 1px solid #232323;
  border-radius: 6px;
  background-color: #fff;
  padding: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .serviceFunction__itemInner {
    padding: 20px;
  }
}
@media screen and (max-width: 321px) {
  .serviceFunction__itemInner {
    padding: 15px;
  }
}
.serviceFunction__fig {
  width: 130px;
  -webkit-flex-basis: 130px;
      -ms-flex-preferred-size: 130px;
          flex-basis: 130px;
}
@media screen and (max-width: 768px) {
  .serviceFunction__fig {
    width: 65px;
    -webkit-flex-basis: 65px;
        -ms-flex-preferred-size: 65px;
            flex-basis: 65px;
  }
}
.serviceFunction__texts {
  width: calc(100% - 130px);
  -webkit-flex-basis: calc(100% - 130px);
      -ms-flex-preferred-size: calc(100% - 130px);
          flex-basis: calc(100% - 130px);
  padding-left: 40px;
}
@media screen and (max-width: 768px) {
  .serviceFunction__texts {
    width: calc(100% - 65px);
    -webkit-flex-basis: calc(100% - 65px);
        -ms-flex-preferred-size: calc(100% - 65px);
            flex-basis: calc(100% - 65px);
    padding-left: 20px;
  }
}
.serviceFunction__cat {
  font-size: 1.4rem;
  color: #fff;
  font-weight: bold;
  background-color: #0989d0;
  padding: 2px 7px;
  border-radius: 6px;
  display: inline-block;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .serviceFunction__cat {
    font-size: 1rem;
    padding: 5px 5px;
    line-height: 1;
    border-radius: 3px;
  }
}
.serviceFunction__cat-admin {
  background-color: #003559;
}
.serviceFunction__headline {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .serviceFunction__headline {
    font-size: 1.6rem;
  }
}
.serviceFunction__desc {
  font-size: 1.5rem;
  line-height: 1.86;
}
@media screen and (max-width: 768px) {
  .serviceFunction__desc {
    font-size: 1.6rem;
    line-height: 1.81;
  }
}

.serviceSupport {
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  padding-top: 120px;
  padding-bottom: 135px;
  background-color: #eaf0f6;
}
@media screen and (max-width: 768px) {
  .serviceSupport {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.serviceSupport__ttl {
  margin-bottom: 20px;
}
.serviceSupport__item {
  margin-bottom: 20px;
  border-radius: 6px;
}
.serviceSupport__item:last-of-type {
  margin-bottom: 0;
}
.serviceSupport__itemInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 30px 50px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .serviceSupport__itemInner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 0;
    padding: 20px 20px 25px 20px;
  }
}
.serviceSupport__fig {
  width: calc(100% - 554px);
  -webkit-flex-basis: calc(100% - 554px);
      -ms-flex-preferred-size: calc(100% - 554px);
          flex-basis: calc(100% - 554px);
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (max-width: 768px) {
  .serviceSupport__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    text-align: center;
  }
}
.serviceSupport__text {
  width: 584px;
  -webkit-flex-basis: 584px;
      -ms-flex-preferred-size: 584px;
          flex-basis: 584px;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  padding-right: 30px;
}
@media screen and (max-width: 768px) {
  .serviceSupport__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
  }
}
.serviceSupport__subTtl {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.64;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .serviceSupport__subTtl {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
}
.serviceSupport__subTtl:before {
  content: "";
  display: block;
  width: 3px;
  background-color: #F98152;
  margin-right: 15px;
}
.serviceSupport__desc {
  font-size: 1.5rem;
  line-height: 1.84;
}
@media screen and (max-width: 768px) {
  .serviceSupport__desc {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }
}


.serviceReason {
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  padding-top: 120px;
  padding-bottom: 135px;
}
@media screen and (max-width: 768px) {
  .serviceReason {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.serviceReason__ttl {
  margin-bottom: 20px;
}
.serviceReason__txt {
  margin-bottom: 35px;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .serviceReason__txt {
    margin-bottom: 25px;
    font-size: 1.6rem;
    text-align: center;
  }
}
.serviceReason__item {
  padding: 40px 0;
  border-top: 1px solid #c8c8c8;
}
@media screen and (max-width: 768px) {
  .serviceReason__item {
    padding: 25px 20px;
  }
}
.serviceReason__item:last-of-type {
  border-bottom: 1px solid #c8c8c8;
}
.serviceReason__itemInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
}
.serviceReason__fig {
  width: 240px;
}
@media screen and (max-width: 768px) {
  .serviceReason__fig {
    width: 100%;
    order: 2;
    margin-top: 20px;
  }
  .serviceReason__img {
    width: 100%;
    height: auto;
  }
}
.serviceReason__text {
  width: calc(100% - 240px);
  padding-left: 40px;
}
@media screen and (max-width: 768px) {
  .serviceReason__text {
    width: 100%;
    padding-left: 0;
  }
}
.serviceReason__subTtl {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.64;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .serviceReason__subTtl {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
}
.serviceReason__desc {
  font-size: 1.5rem;
  line-height: 1.84;
}
@media screen and (max-width: 768px) {
  .serviceReason__desc {
    font-size: 1.4rem;
  }
}


.servicePrice {
  padding-top: 120px;
  padding-bottom: 135px;
}
@media screen and (max-width: 768px) {
  .servicePrice {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.servicePrice__ttl {
  margin-bottom: 15px;
}
.servicePrice__intro {
  text-align: center;
  font-size: 2rem;
  line-height: 2;
  margin-bottom: 25px;
}
@media screen and (max-width: 768px) {
  .servicePrice__intro {
    font-size: 1.6rem;
    line-height: 1.6;
    margin-bottom: 15px;
    text-align: left;
  }
  .servicePrice__intro br {
    display: none;
  }
}
.servicePrice__introSt {
  font-size: 2.2rem;
  font-weight: 700;
  color: #F98152;
  position: relative;
  top: 0px;
}
@media screen and (max-width: 768px) {
  .servicePrice__introSt {
    font-size: 1.8rem;
  }
}
.servicePrice__desc {
  font-size: 1.8rem;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 25px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .servicePrice__desc {
    font-size: 1.6rem;
    text-align: center;
    margin-top: 15px;
    text-align: left;
  }
}
.servicePrice__bt {
  display: block;
  width: 400px;
  height: 124px;
  background-color: #fc571e;
  letter-spacing: 0.05em;
  border-radius: 9999px;
  text-align: center;
  font-size: 1.8rem;
  padding: 23px 10px;
  color: #fff;
  text-decoration: none;
  margin: auto;
  margin-top: 40px;
  position: relative;
  border: 1px solid #fc571e;
  font-weight: 600;
}
.servicePrice__bt .disc {
  display: block;
  margin-top: 10px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.47;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .servicePrice__bt {
    width: 100%;
    padding: 15px 10px;
    font-size: 1.6rem;
    height: 94px;
    margin-top: 20px;
  }
  .servicePrice__bt .disc {
    margin-top: 5px;
    font-size: 1.2rem;
  }
}
.servicePrice__bt:hover {
  color: #fc571e;
  background: transparent;
  background-color: #fff;
}
.servicePrice__bt:hover:after {
  border-color: #fc571e;
}
.servicePrice__bt:after {
  content: "";
  width: 5.5px;
  height: 5.5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  display: block;
  position: absolute;
  right: 32px;
  top: calc(50% - 2.75px);
}
@media screen and (max-width: 768px) {
  .servicePrice__bt:after {
    right: 25px;
  }
}

.priceList {
  border: 1px solid #fff;
  border-radius: 6px;
  width: 580px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .priceList {
    width: 100%;
  }
}
.priceList:after {
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.priceList__item {
  position: relative;
  z-index: 2;
  width: 50%;
  -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
}
.priceList__item:first-of-type .priceList__dt {
  border-right: 1px solid #fff;
}
.priceList__item:last-of-type .priceList__dd {
  border-left: 1px solid #232323;
}
.priceList__dt {
  font-size: 2.2rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  display: block;
  padding: 20px;
}
@media screen and (max-width: 768px) {
  .priceList__dt {
    font-size: 2rem;
    padding: 15px;
  }
}
.priceList__dd {
  padding: 25px 30px;
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
  height: calc(100% - 1em - 45px);
  background-color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .priceList__dd {
    padding: 20px 15px;
    font-size: 2rem;
    height: calc(100% - 1em - 39px);
  }
}
.priceList__ddText {
  font-weight: 700;
}
.priceList__ddSp {
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .priceList__ddSp {
    font-size: 1.4rem;
  }
}
.priceList__ddSm {
  font-size: 1.6rem;
  display: block;
  margin-top: 5px;
}
@media screen and (max-width: 768px) {
  .priceList__ddSm {
    font-size: 1.3rem;
  }
}
.servicePriceNote {
  width: 100%;
  max-width: 800px;
  padding: 30px;
  margin: 50px auto 0;
  background: rgba(0, 0, 0, .4);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.servicePriceNote__desc {
  font-size: 1.6rem;
  line-height: 1.8;
  color: #fff;
  width: calc(100% - 143px);
}
.servicePriceNote__fig {
  width: 113px;
}
.servicePriceNote__img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .servicePriceNote {
    padding: 20px;
    margin: 25px auto 0;
  }
  .servicePriceNote__desc {
    width: calc(100% - 133px);
  }
}
@media screen and (max-width: 640px) {
  .servicePriceNote {
    padding: 15px 20px 20px;
  }
  .servicePriceNote__desc {
    width: 100%;
  }
  .servicePriceNote__fig {
    margin: 15px auto 0;
    width: 45%;
  }
}

.priceBox {
  width: 100%;
  max-width: 850px;
  margin: 0 auto;
  padding: 55px 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  background: #fff;
  border: 4px solid #009BE4;
  border-radius: 30px;
  position: relative;
}
.priceBox_numBox {
  width: 180px;
  aspect-ratio: 1 / 1;
  margin-right: 40px;
  padding-top: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  background: #F3FAFF;
  box-shadow: 4px 4px 0px rgba(0, 53, 89, .5);
}
.priceBox_numTxt {
  text-align: center;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  color: #003559;
  margin-bottom: 10px;
}
.priceBox_num {
  font-size: 2rem;
  line-height: 60px;
  font-weight: 700;
  color: #003559;
}
.priceBox_numSp {
  font-size: 6rem;
  font-weight: 700;
  color: #FC571E;
}
.priceBox_price {
  width: calc(100% - 220px);
  max-width: 500px;
}
.priceBox_priceTxt {
  padding-bottom: 5px;
  margin-bottom: 20px;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  border-bottom: 1px solid #232323;
}
.priceBox_priceTxtSp {
  margin: 0 10px 0 15px;
  font-size: 6rem;
  font-weight: 700;
  color: #FC571E;
}
.priceBox_pricePer {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
.priceBox_pricePerSp {
  margin: 0 5px 0 7px;
  font-size: 4rem;
  font-weight: 700;
  color: #FC571E;
}
.priceBox_ic {
  width: 80px;
  aspect-ratio: 1 / 1;
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
  font-style: normal;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #003559;
  border-radius: 50%;
  position: absolute;
  top: -26px;
  left: -10px;
}
.priceBox_ic::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-top: 17px solid #003559;
  border-bottom: 0;
  transform: rotate(-46deg);
  position: absolute;
  bottom: 2px;
  right: 2px;
}
.priceBox_txt {
  margin: 30px 0 40px;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
}
.priceBox_ex {
  width: 100%;
  max-width: 730px;
  margin: 0 auto 55px;
}
.priceBox_ex .priceBox {
  padding: 50px 30px;
  border-color: #C4C5C5;
}
.priceBox_ex .priceBox_numBox {
  width: 140px;
  margin-right: 30px;
  padding-top: 15px;
}
.priceBox_ex .priceBox_numTxt {
  font-size: 1.5rem;
  margin-bottom: 10px;
}
.priceBox_ex .priceBox_num {
  font-size: 1.5rem;
  line-height: 38px;
}
.priceBox_ex .priceBox_numSp {
  font-size: 3.8rem;
  color: inherit;
}
.priceBox_ex .priceBox_price {
  width: calc(100% - 170px);
  max-width: 400px;
}
.priceBox_ex .priceBox_priceTxt {
  padding-bottom: 5px;
  margin-bottom: 20px;
  font-size: 2rem;
}
.priceBox_ex .priceBox_priceTxtSp {
  margin: 0 5px 0 7px;
  font-size: 4rem;
  color: inherit;
}
.priceBox_ex .priceBox_pricePer {
  font-size: 2rem;
}
.priceBox_ex .priceBox_pricePerSp {
  color: inherit;
}
.priceBox_exNote {
  margin-top: 15px;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 600;
}
.priceBox_exNote + .priceBox_exNote {
  margin-top: 6px;
}
@media screen and (max-width: 768px) {
  .priceBox {
    padding: 25px 30px;
    border: 2px solid #009BE4;
    border-radius: 15px;
    display: block;
  }
  .priceBox_numBox {
    width: 120px;
    margin: 0 auto 25px;
    padding-top: 17px;
    box-shadow: 2px 2px 0px rgba(0, 53, 89, .5);
  }
  .priceBox_numTxt {
    font-size: 1.6rem;
    margin-bottom: 7px;
  }
  .priceBox_num {
    font-size: 1.6rem;
    line-height: 40px;
  }
  .priceBox_numSp {
    font-size: 4rem;
  }
  .priceBox_price {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
  }
  .priceBox_priceTxt {
    padding-bottom: 5px;
    margin-bottom: 10px;
    font-size: 1.8rem;
  }
  .priceBox_priceTxtSp {
    margin: 0 5px 0 10px;
    font-size: 4rem;
  }
  .priceBox_pricePer {
    font-size: 1.6rem;
  }
  .priceBox_pricePerSp {
    margin: 0 5px 0 7px;
    font-size: 3rem;
  }
  .priceBox_ic {
    width: 60px;
    font-size: 1.4rem;
    top: -20px;
    left: -7px;
  }
  .priceBox_ic::before {
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-top: 12px solid #003559;
    bottom: 2px;
    right: 2px;
  }
  .priceBox_txt {
    margin: 20px 0 30px;
    font-size: 1.6rem;
  }
  .priceBox_ex {
    margin: 0 auto 35px;
  }
  .priceBox_ex .priceBox {
    padding: 25px 30px;
  }
  .priceBox_ex .priceBox_numBox {
    width: 100px;
    margin-right: auto;
    padding-top: 15px;
  }
  .priceBox_ex .priceBox_numTxt {
    font-size: 1.4rem;
    margin-bottom: 7px;
  }
  .priceBox_ex .priceBox_num {
    font-size: 1.4rem;
    line-height: 26px;
  }
  .priceBox_ex .priceBox_numSp {
    font-size: 2.6rem;
  }
  .priceBox_ex .priceBox_price {
    width: 100%;
  }
  .priceBox_ex .priceBox_priceTxt {
    padding-bottom: 5px;
    margin-bottom: 10px;
    font-size: 1.5rem;
  }
  .priceBox_ex .priceBox_priceTxtSp {
    margin: 0 5px 0 7px;
    font-size: 3rem;
  }
  .priceBox_ex .priceBox_pricePer {
    font-size: 1.5rem;
  }
  .priceBox_exNote {
    margin-top: 10px;
    font-size: 1.4rem;
  }
  .priceBox_exNote + .priceBox_exNote {
    margin-top: 4px;
  }
}


.topSection--bg {
  background: #eef4fa;
}

.topInterview {
  padding-top: 120px;
  padding-bottom: 130px; }
  .topInterview__ttl {
    margin-bottom: 20px;
  }
  .topInterview__items {
    width: 100%;
  }
  .topInterview__item {
    border-radius: 6px;
    overflow: hidden;
    display: block;
    padding-left: 300px;
    position: relative;
  }
  .topInterview__item:nth-child(n+2) {
    margin-top: 40px;
  }
  a.topInterview__item {
    text-decoration: none;
    cursor: pointer;
  }
  a.topInterview__item:hover {
    opacity: .7;
  }
  .topInterview__itemFig {
    width: 300px;
    height: 100%;
    font-size: 0;
    position: absolute;
    top: 0;
    left: 0;
  }
  .topInterview__itemImg {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .topInterview__text {
    width: 100%;
    padding: 30px 30px 26px;
    background: #fff;
  }
  .topInterview__itemIc {
    display: inline-block;
    padding: 6px 10px 5px;
    margin-bottom: 15px;
    font-size: 1.2rem;
    line-height: 1;
    border: 1px solid #000;
  }
  .topInterview__itemTtl {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.75;
  }
  .topInterview__itemInfo {
    margin-top: 13px;
    font-size: 1.2rem;
    line-height: 1.75;
  }
@media screen and (max-width: 768px) {
  .topInterview {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .topInterview__ttl {
    margin-bottom: 20px;
  }
  .topInterview__item {
    border-radius: 6px;
    padding-left: 0;
  }
  .topInterview__item:nth-child(n+2) {
    margin-top: 20px;
  }
  .topInterview__itemFig {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    position: relative;
  }
  .topInterview__text {
    padding: 20px 20px 20px;
  }
  .topInterview__itemIc {
    padding: 6px 10px 5px;
    margin-bottom: 15px;
    font-size: 1.2rem;
  }
  .topInterview__itemTtl {
    font-size: 1.8rem;
  }
  .topInterview__itemInfo {
    margin-top: 13px;
    font-size: 1.2rem;
  }
}

.topRecommendation {
  padding-top: 120px;
  padding-bottom: 130px;
}
@media screen and (max-width: 768px) {
  .topRecommendation {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.topRecommendation__ttl {
  margin-bottom: 20px;
}
.mainVoice__item {
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .mainVoice__item {
    margin-bottom: 40px;
  }
}
.mainVoice__item:last-of-type {
  margin-bottom: 0;
}
.mainVoice__itemInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.mainVoice__fig {
  width: 435px;
  -webkit-flex-basis: 435px;
      -ms-flex-preferred-size: 435px;
          flex-basis: 435px;
}
@media screen and (max-width: 1060px) {
  .mainVoice__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 20px;
  }
}
.mainVoice__text {
  width: calc(100% - 435px);
  -webkit-flex-basis: calc(100% - 435px);
      -ms-flex-preferred-size: calc(100% - 435px);
          flex-basis: calc(100% - 435px);
  padding-left: 40px;
}
@media screen and (max-width: 1060px) {
  .mainVoice__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}
.mainVoice__ttl {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .mainVoice__ttl {
    font-size: 2rem;
  }
}
.mainVoice__desc {
  line-height: 2;
}
.mainVoice__sm {
  font-size: 1.4rem;
  display: block;
  margin-top: 15px;
}

.subVoice {
  margin-top: 70px;
}
@media screen and (max-width: 768px) {
  .subVoice {
    margin-top: 50px;
  }
}
.subVoice__item {
  margin-bottom: 45px;
}
@media screen and (max-width: 768px) {
  .subVoice__item {
    margin-bottom: 40px;
  }
}
.subVoice__item:nth-of-type(even) .subVoice__fig {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (max-width: 768px) {
  .subVoice__item:nth-of-type(even) .subVoice__fig {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
.subVoice__item:nth-of-type(even) .subVoice__text {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  margin-right: 70px;
}
@media screen and (max-width: 768px) {
  .subVoice__item:nth-of-type(even) .subVoice__text {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin-right: 0;
  }
}
.subVoice__item:nth-of-type(even) .subVoice__text:before {
  left: auto;
  right: -22px;
  -webkit-transform: translateY(-50%) rotate(-60deg) skew(30deg, 30deg);
          transform: translateY(-50%) rotate(-60deg) skew(30deg, 30deg);
}
.subVoice__item:last-of-type {
  margin-bottom: 0;
}
.subVoice__itemInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .subVoice__itemInner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
.subVoice__fig {
  width: 134px;
  -webkit-flex-basis: 134px;
      -ms-flex-preferred-size: 134px;
          flex-basis: 134px;
}
@media screen and (max-width: 768px) {
  .subVoice__fig {
    width: 120px;
    -webkit-flex-basis: 120px;
        -ms-flex-preferred-size: 120px;
            flex-basis: 120px;
    margin: 0 auto 20px auto;
  }
}
.subVoice__text {
  width: calc(100% - 204px);
  -webkit-flex-basis: calc(100% - 204px);
      -ms-flex-preferred-size: calc(100% - 204px);
          flex-basis: calc(100% - 204px);
  margin-left: 70px;
  border-radius: 6px;
  -webkit-box-shadow: 0 0 18px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 18px rgba(0, 0, 0, 0.1);
  padding: 35px;
  background-color: #fff;
  position: relative;
}
@media screen and (max-width: 768px) {
  .subVoice__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-left: 0;
    padding: 20px;
  }
}
.subVoice__textInner {
  position: relative;
  z-index: 2;
}
.subVoice__text:before {
  content: "";
  display: block;
  width: 51px;
  height: 51px;
  -webkit-transform: translateY(-50%) rotate(-30deg) skew(30deg, 30deg);
          transform: translateY(-50%) rotate(-30deg) skew(30deg, 30deg);
  position: absolute;
  left: -22px;
  top: 50%;
  -webkit-box-shadow: 0 0 18px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 18px rgba(0, 0, 0, 0.1);
  background-color: #fff;
  position: absolute;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .subVoice__text:before {
    display: none;
  }
}
.subVoice__text:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 6px;
  background-color: #fff;
}
.subVoice__head {
  font-size: 2rem;
  font-weight: 700;
  color: #003559;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .subVoice__head {
    font-size: 1.8rem;
  }
}
.subVoice__desc {
  font-size: 1.5rem;
  line-height: 1.84;
}
@media screen and (max-width: 768px) {
  .subVoice__desc {
    font-size: 1.4rem;
  }
}

.topReader {
  margin-bottom: 110px;
}
@media screen and (max-width: 768px) {
  .topReader {
    margin-bottom: 60px;
  }
}
.topReader__ttl {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .topReader__ttl {
    text-align: center;
  }
}
.topReader__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1060px) {
  .topReader__item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
.topReader__item:nth-of-type(odd) {
  border-bottom: 1px solid #EEEEEE;
  margin-bottom: 50px;
  padding-bottom: 45px;
}
@media screen and (max-width: 1060px) {
  .topReader__item:nth-of-type(odd) {
    margin-bottom: 30px;
    padding-bottom: 25px;
  }
}
.topReader__item:nth-of-type(odd) .topReader__text {
  width: calc(100% - 400px);
  -webkit-flex-basis: calc(100% - 400px);
      -ms-flex-preferred-size: calc(100% - 400px);
          flex-basis: calc(100% - 400px);
  padding-right: 40px;
}
@media screen and (max-width: 1060px) {
  .topReader__item:nth-of-type(odd) .topReader__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
  }
}
.topReader__item:nth-of-type(odd) .topReader__fig {
  width: 400px;
  -webkit-flex-basis: 400px;
      -ms-flex-preferred-size: 400px;
          flex-basis: 400px;
}
@media screen and (max-width: 1060px) {
  .topReader__item:nth-of-type(odd) .topReader__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}
.topReader__item:nth-of-type(even) .topReader__text {
  width: calc(100% - 204px);
  -webkit-flex-basis: calc(100% - 204px);
      -ms-flex-preferred-size: calc(100% - 204px);
          flex-basis: calc(100% - 204px);
  padding-right: 40px;
}
@media screen and (max-width: 1060px) {
  .topReader__item:nth-of-type(even) .topReader__text {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
  }
}
.topReader__item:nth-of-type(even) .topReader__fig {
  width: 204px;
  -webkit-flex-basis: 204px;
      -ms-flex-preferred-size: 204px;
          flex-basis: 204px;
}
@media screen and (max-width: 1060px) {
  .topReader__item:nth-of-type(even) .topReader__fig {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-right: 0;
    padding-left: 45px;
    padding-right: 45px;
  }
}
.topReader__headline {
  font-size: 3rem;
  line-height: 1.53;
  font-weight: 700;
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .topReader__headline {
    font-size: 2rem;
  }
  .topReader__headline br {
    display: none;
  }
}
.topReader__desc {
  line-height: 2;
}
@media screen and (max-width: 1060px) {
  .topReader__fig {
    margin-top: 20px;
  }
}
.topReader__descSm {
  display: block;
  margin-top: 5px;
}

.topQa {
  padding-top: 120px;
  padding-bottom: 135px;
}
@media screen and (max-width: 768px) {
  .topQa {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.topQa__item {
  padding: 25px 0 25px 0;
  border-bottom: 1px solid #EEEEEE;
}
@media screen and (max-width: 768px) {
  .topQa__item {
    padding: 20px 0 20px;
  }
}
.topQa__dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.1rem;
  font-weight: 700;
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .topQa__dt {
    font-size: 1.8rem;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 10px;
  }
}
.topQa__dt:before {
  content: "";
  display: block;
  min-width: 32.8px;
  width: 32.8px;
  height: 31.3px;
  margin-right: 10px;
  background: url(../images/icon_qa.svg) no-repeat center center/cover;
}
@media screen and (max-width: 768px) {
  .topQa__dt:before {
    width: 26.3px;
    height: 25.1px;
    min-width: 26.3px;
    position: relative;
    top: 2px;
  }
}
.topQa__dd {
  line-height: 2;
}
.topQa__more {
  display: block;
  width: 192px;
  height: 56px;
  margin: auto;
  border: 1px solid #232323;
  border-radius: 6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 50px;
  cursor: pointer;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .topQa__more {
    width: 160px;
    height: 42px;
    margin-top: 30px;
    font-size: 1.4rem;
  }
}
.topQa__list_type_hide {
  display: none;
}

.topContact {
  padding-top: 120px;
  padding-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .topContact {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.topContact__ttl {
  margin-bottom: 20px;
  display: block;
  text-align: center;
}
.topContact__ttl:after {
  margin: 10px auto 0;
}
.topContact__ttl .spnon {
  display: inline;
}
@media screen and (max-width: 768px) {
  .topContact__ttl .spnon {
    display: none;
  }
}
.topContact__txt {
  margin-bottom: 35px;
  font-size: 2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .topContact__txt {
    margin-bottom: 25px;
    text-align: left;
    font-size: 1.6rem;
  }
}
.contactForm__tel {
  background-color: #FFFFFF;
  padding: 35px 20px;
  border-radius: 4px;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .contactForm__tel {
    padding: 30px 20px;
    margin-bottom: 20px;
  }
}
.contactForm__telImg {
  max-width: 430px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.contactForm input, .contactForm select, .contactForm button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.contactForm__telDt {
  display: block;
  font-weight: 700;
  text-align: center;
  margin-bottom: 15px;
}
.contactForm__telLink {
  display: inline!important;
}
.contactForm__telCompany {
  font-weight: bold;
  text-align: center;
  margin-top: 15px;
}
.contactForm__telCompanySm {
  font-size: 1.4rem;
  font-weight: bold;
}
.contactForm__tel-thanks.contactForm__tel {
  background-color: #e9eff5;
  margin-bottom: 40px;
}
.contactForm__tel-thanks .contactForm__telDt {
  font-size: 1.4rem;
  margin-bottom: 25px;
}
.contactForm__tel-thanks .contactForm__telCompany {
  margin-top: 25px;
}
@media screen and (max-width: 768px) {
  .contactForm__tel-thanks .contactForm__telDt {
    margin-bottom: 20px;
  }
  .contactForm__tel-thanks .contactForm__telCompany {
    margin-top: 20px;
  }
}
.contactForm__intro {
  font-size: 1.4rem;
  line-height: 2;
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .contactForm__intro {
    text-align: left;
    margin-bottom: 15px;
  }
  .contactForm__intro br {
    display: none;
  }
}
.contactForm__dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid #C8C9C9;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.contactForm__dl:first-of-type {
  border-top: 1px solid #C8C9C9;
}
.contactForm__dl.contactForm__dl_type_contact:not(.is_active) {
  display: none;
}
.contactForm__dt {
  width: 240px;
  -webkit-flex-basis: 240px;
      -ms-flex-preferred-size: 240px;
          flex-basis: 240px;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .contactForm__dt {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    margin-bottom: 10px;
  }
}
.contactForm__dt_type_req:after {
  content: "必須";
  font-size: 1.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 33px;
  height: 18px;
  background-color: #fc571e;
  border-radius: 4px;
  color: #fff;
  font-weight: 400;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .contactForm__dt_type_req:after {
    font-size: 1rem;
    margin-left: 10px;
  }
}
.contactForm__dd {
  width: calc(100% - 240px);
  -webkit-flex-basis: calc(100% - 240px);
      -ms-flex-preferred-size: calc(100% - 240px);
          flex-basis: calc(100% - 240px);
  padding-left: 20px;
}
@media screen and (max-width: 768px) {
  .contactForm__dd {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}
.contactForm__lab {
  display: block;
  max-width: 332px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .contactForm__lab {
    max-width: 100%;
  }
}
.contactForm__lab:after {
  content: "";
  display: block;
  width: 7.2px;
  height: 17.6px;
  background: url(../images/icon_select.svg) no-repeat center center/cover;
  position: absolute;
  right: 15px;
  top: calc(50% - 8.8px);
}
.contactForm__select {
  display: block;
  width: 100%;
  background-color: #FFFFFF;
  border: none;
  padding: 18px 20px;
  border-radius: 4px;
}
@media screen and (max-width: 768px) {
  .contactForm__select {
    padding: 10px 15px;
    line-height: 1.5;
  }
}
.contactForm__inputTxt {
  display: block;
  width: 100%;
  background-color: #FFFFFF;
  border: none;
  padding: 18px 20px;
  border-radius: 4px;
}
@media screen and (max-width: 768px) {
  .contactForm__inputTxt {
    padding: 10px 15px;
  }
}
.contactForm__inputTxt::placeholder {
  color: #c8c9c9;
}
.contactForm__ddText {
  font-size: 1.4rem;
  margin-top: 10px;
}
.contactForm__dd .error-message {
  font-size: 1.4rem;
  margin-top: 10px;
  color: #f00;
}
.contactForm__ddBody {
  display: block;
  width: 100%;
  background-color: #FFFFFF;
  border: none;
  padding: 18px 20px;
  border-radius: 4px;
  height: 150px;
}
@media screen and (max-width: 768px) {
  .contactForm__ddBody {
    padding: 10px 15px;
  }
}
.contactForm__caution {
  font-size: 1.4rem;
  text-align: center;
  margin-top: 30px;
}
.contactForm__cautionLink {
  color: inherit;
  text-decoration: underline;
}
.contactForm__cautionLink:hover {
  text-decoration: none;
}
.contactForm__txt_confirm {
  margin-top: 32px;
  line-height: 1.75;
}
@media screen and (max-width: 768px) {
  .contactForm__txt_confirm {
    margin-top: 25px;
    font-size: 1.4rem;
  }
}
.contactForm__bts {
  margin-top: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(100% + 20px);
  margin-left: -10px;
  margin-right: -10px;
}
@media screen and (max-width: 768px) {
  .contactForm__bts {
    margin-top: 25px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.contactForm__btsItem {
  padding: 0 10px;
}
@media screen and (max-width: 768px) {
  .contactForm__btsItem {
    width: 100%;
    padding: 0;
  }
  .contactForm__btsItem:nth-of-type(1) {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .contactForm__btsItem:nth-of-type(2) {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: 15px;
  }
}
.contactForm__btsItem_type_full {
  width: 100%;
  -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
}
.contactForm__btsItem_type_col {
  width: 300px;
}
@media screen and (max-width: 768px) {
  .contactForm__btsItem_type_col {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}
.contactForm__btsBtn {
  font-size: 1.8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fc571e;
  border-radius: 88px;
  color: #fff;
  font-weight: bold;
  width: 387px;
  height: 88px;
  border: 1px solid #fc571e;
  margin: auto;
  position: relative;
  letter-spacing: 0.05em;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .contactForm__btsBtn {
    width: 100%;
    font-size: 1.4rem;
    height: 60px;
  }
}
.contactForm__btsBtn:after {
  content: "";
  width: 5.5px;
  height: 5.5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  display: block;
  position: absolute;
  right: 32px;
  top: calc(50% - 2.75px);
}
@media screen and (max-width: 768px) {
  .contactForm__btsBtn:after {
    right: 15px;
  }
}
.contactForm__btsBtn:hover {
  color: #fc571e;
  background: #fff;
}
.contactForm__btsBtn:hover:after {
  border-color: #fc571e;
}
.contactForm__btsBtn_type_back {
  width: 280px;
  -webkit-flex-basis: 280px;
      -ms-flex-preferred-size: 280px;
          flex-basis: 280px;
  color: #fc571e;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .contactForm__btsBtn_type_back {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    padding-left: 0;
  }
}
.contactForm__btsBtn_type_back:hover {
  background-color: #fc571e;
  color: #fff;
}
.contactForm__btsBtn_type_back:hover:after {
  border-color: #fff;
}
.contactForm__btsBtn_type_back:after {
  right: auto;
  left: 32px;
  border-color: #fc571e;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
@media screen and (max-width: 768px) {
  .contactForm__btsBtn_type_back:after {
    left: 15px;
  }
}
.contactForm__btsBtn_type_submit {
  width: 280px;
  -webkit-flex-basis: 280px;
      -ms-flex-preferred-size: 280px;
          flex-basis: 280px;
}
@media screen and (max-width: 768px) {
  .contactForm__btsBtn_type_submit {
    width: 100%;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
  }
}

@media screen and (max-width: 768px) {
  .low {
    padding-top: 0;
  }
}
.low__header {
  background-color: #EFF5FB;
  margin-bottom: 70px;
}
@media screen and (max-width: 768px) {
  .low__header {
    margin-bottom: 45px;
  }
}
.low__headerInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 200px;
}
@media screen and (max-width: 768px) {
  .low__headerInner {
    height: 130px;
  }
}
.low__ttl {
  font-size: 4rem;
  font-weight: 800;
  text-align: center;
  color: #003559;
}
@media screen and (max-width: 768px) {
  .low__ttl {
    font-size: 2.7rem;
  }
}

.contactForm_type_confirm .contactForm__dt_type_req:after {
  display: none;
}

.contact {
  padding-bottom: 135px;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .contact {
    padding-bottom: 60px;
  }
}
.contact__ttl {
  font-size: 2.8rem;
  font-weight: 700;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .contact__ttl {
    font-size: 2.2rem;
    margin-bottom: 15px;
  }
}
.contact__intro {
  font-size: 1.4rem;
  margin-bottom: 55px;
}
@media screen and (max-width: 768px) {
  .contact__intro {
    margin-bottom: 35px;
  }
}
.contact__thanks {
  font-size: 1.4rem;
  margin-bottom: 45px;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .contact__thanks {
    margin-bottom: 30px;
  }
}
.contact__caution {
  background-color: #F5F6F6;
  padding: 20px 30px;
}
.contact__cautionPara {
  margin-bottom: 1.5em;
  font-size: 1.4rem;
  line-height: 2;
}
.contact__cautionPara:last-of-type {
  margin-bottom: 0;
}
.contact__cautionLink {
  text-decoration: none;
  color: inherit;
}
.contact__btn {
  width: 387px;
  height: 88px;
  background-color: #003559;
  letter-spacing: 0.05em;
  border-radius: 100px;
  font-size: 1.8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px;
  color: #fff;
  text-decoration: none;
  margin: auto;
  margin-top: 40px;
  position: relative;
  border: 1px solid #003559;
}
@media screen and (max-width: 768px) {
  .contact__btn {
    width: 100%;
    font-size: 1.6rem;
    height: 60px;
    margin-top: 30px;
  }
}
.contact__btn:hover {
  color: #003559;
  background: transparent;
  background-color: #fff;
}
.contact__btn:hover:after {
  border-color: #003559;
}
.contact__btn:after {
  content: "";
  width: 5.5px;
  height: 5.5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  display: block;
  position: absolute;
  right: 32px;
  top: calc(50% - 2.75px);
}
@media screen and (max-width: 768px) {
  .contact__btn:after {
    right: 25px;
  }
}

.contact_download {
  margin: -10px auto 40px;
  width: 100%;
  border: 1px solid #232323;
  padding: 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.contact_download .download_fig {
  width: 273px;
}
.contact_download .download_img {
  width: 100%;
  height: auto;
}
.contact_download .download_inn {
  width: calc(100% - 303px);
}
.contact_download .download_ttl {
  margin-bottom: 20px;
  font-size: 2.4rem;
  line-height: 1.2;
  font-weight: 800;
  color: #003559;
}
.contact_download .download_txt {
  margin-bottom: 15px;
  font-size: 1.4rem;
}
.contact_download .contact__btn {
  max-width: 242px;
  height: 45px;
  font-size: 1.6rem;
  margin: 0;
}
@media screen and (max-width: 768px) {
  .contact_download .download_fig {
    width: 80%;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
  }
  .contact_download .download_inn {
    width: 100%;
  }
  .contact_download .download_ttl {
    font-size: 2rem;
  }
  .contact_download .contact__btn {
    margin: 0 auto;
  }
}

.download_btn {
  width: 232px;
  height: 45px;
  background-color: #f50;
  border-radius: 4px;
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  text-decoration: none;
  margin-top: 20px;
  border: 1px solid #f50;
  background: #f50 url(../images/icon_dl_wh.svg) right 20px center no-repeat;
  background-size: 12px 15px;
}
@media screen and (max-width: 768px) {
  .download_btn {
    width: 100%;
    font-size: 1.6rem;
    height: 60px;
    margin-top: 30px;
  }
}
.download_btn:hover {
  color: #f50;
  background-color: #fff;
  border-color: #f50;
  background-image: url(../images/icon_dl_or.svg);
}

.contents {
  padding-top: 96px;
}
.contents-header {
  width: 100%;
  padding: 60px 20px;
  background-color: #EFF5FB;
}
.contents-header-ttl {
  width: 100%;
  font-size: 4rem;
  line-height: 1.4;
  font-weight: 800;
  text-align: center;
  color: #003559;
}
.contents-header-ttl small {
  display: block;
  font-size: 1.8rem;
  font-weight: 800;
  margin-bottom: 8px;
}
.contents-wrap {
  width: 100%;
  max-width: 840px;
  margin: 0 auto;
  padding: 80px 20px 100px;
}
.content-block:first-child {
  padding-top: 39px;
  border-top: 1px solid #BFC0C0;
}
.content-block:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.content-block.content-block--nobdr {
  padding-top: 0;
  border-top: none;
}
.content-block .ttl-comp01 {
  margin-bottom: 20px;
  font-size: 2rem;
}
.content-block p {
  font-size: 1.4rem;
  line-height: 1.7;
}
.content-block .box {
  margin-top: 25px;
  padding: 25px 30px;
  line-height: 2;
  background: #F5F6F6;
}
.content-block .modified {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .contents {
    padding-top: 56px;
  }
  .contents-header {
    padding: 27px 10px;
  }
  .contents-header-ttl {
    font-size: 2.2rem;
  }
  .contents-header-ttl small {
    font-size: 1.2rem;
    margin-bottom: 5px;
  }
  .contents-wrap {
    width: 100%;
    max-width: 840px;
    padding: 40px 20px 50px;
  }
  .content-block:first-child {
    padding-top: 20px;
  }
  .content-block:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  .content-block.content-block--nobdr {
    padding-top: 0;
    border-top: none;
  }
  .content-block .ttl-comp01 {
    margin-bottom: 10px;
    font-size: 1.6rem;
  }
  .content-block .box {
    margin-top:15px;
    padding: 15px 20px;
    line-height: 1.8;
  }
  .contents + .footer {
    padding-bottom: 0;
  }
}

.contents-interview-wrap {
  max-width: 890px;
  padding-bottom: 70px; }
  .interview_ttl {
    font-size: 2.8rem;
    line-height: 1.7;
    font-weight: 700;
  }
  .interview_infoBox {
    width: 100%;
    margin-top: 50px;
    padding: 0 30px;
    border-radius: 8px;
    background: #F7F7F7;
  }
  .interview_infoBoxDl {
    padding: 17px 0 15px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .interview_infoBoxDl:nth-child(n+2) {
    border-top: 1px solid #ddd;
  }
  .interview_infoBoxDt {
    width: 105px;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .interview_infoBoxDd {
    width: calc(100% - 105px);
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .interview_fig {
    margin: 50px 0;
    width: 100%;
    font-size: 0;
  }
  .interview_img {
    width: 100%;
    height: auto;
  }
  .interview_contents {
    padding: 50px;
    border: 1px solid #E8E8E8;
  }
  .interview_contents > *:first-child {
    margin-top: 0;
  }
  .interview_contents > *:last-child {
    margin-bottom: 0;
  }
  .interview_contents > .interview_contentsFig:last-child {
    margin-bottom: -50px;
  }
  .interview_contentsTtl {
    margin: 50px 0 35px;
    padding-left: 43px;
    font-size: 2rem;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: .06em;
    position: relative;
  }
  .interview_contentsTtl::before {
    content: "";
    display: block;
    width: 32.8px;
    height: 31.3px;
    background: url(../images/icon_qa.svg) no-repeat center center/contain;
    position: absolute;
    top: -2px;
    left: 0;
  }
  .interview_contentsSttl {
    margin-top: 35px;
    font-size: 1.6rem;
    line-height: 1.75;
    font-weight: 700;
  }
  .interview_contentsTxt {
    text-indent: 1em;
    font-size: 1.6rem;
    line-height: 1.75;
  }
  .interview_contentsListTxt {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1.6rem;
    line-height: 1.75;
  }
  .interview_contentsListTxt::before {
    content: "・";
  }
  .interview_contentsFig {
    margin: 50px -50px;
    font-size: 0;
  }
  .interview_contentsImg {
    width: 100%;
    height: auto;
  }
@media screen and (max-width: 768px) {
  .contents-interview-wrap {
    padding-bottom: 40px;
  }
  .interview_ttl {
    font-size: 2rem;
  }
  .interview_infoBox {
    margin-top: 25px;
    padding: 0 20px;
    border-radius: 6px;
  }
  .interview_infoBoxDl {
    padding: 12px 0 10px;
  }
  .interview_infoBoxDt {
    width: 5em;
    font-size: 1.4rem;
  }
  .interview_infoBoxDd {
    width: calc(100% - 5em);
    font-size: 1.4rem;
  }
  .interview_fig {
    margin: 25px 0;
  }
  .interview_contents {
    padding: 25px 20px;
  }
  .interview_contents > *:first-child {
    margin-top: 0;
  }
  .interview_contents > *:last-child {
    margin-bottom: 0;
  }
  .interview_contents > .interview_contentsFig:last-child {
    margin-bottom: -25px;
  }
  .interview_contentsTtl {
    margin: 25px 0 20px;
    padding-left: 35px;
    font-size: 1.8rem;
  }
  .interview_contentsTtl::before {
    width: 26.3px;
    height: 25.1px;
    top: -1px;
  }
  .interview_contentsSttl {
    margin-top: 20px;
    font-size: 1.6rem;
  }
  .interview_contentsTxt {
    font-size: 1.6rem;
  }
  .interview_contentsListTxt {
    font-size: 1.6rem;
  }
  .interview_contentsFig {
    margin: 25px -20px;
  }
}
